Linux学习基础操作和文件管理命令
[1] 如何解决系统图形出现问题:
1.ctrl+alt+(f2-f6)>>>进入虚拟控制台(ctrl+alt+f1>>>返回图形);
2.登陆系统获得root权限,执行init 3(login–root,password–westos,[******]#–init 3);
注:(init?)0-关机、 6-充启、 2/3/4-无图形网络模式(黑)、 5-重新打开一个图形、 1-单用户模式
3.再次登陆,执行init 5.
[2] 实验环境控制:
在我们的系统中有两个已经装好的虚拟机-vm desktop和server,其中用户又分为超级用户(root)和普通用户(student)
虚拟机 |
desktop |
server |
普通用户及其对应密码 |
student-student |
student-student |
超级用户及其对应密码 |
root-redhat |
root-redhat |
rht-vmctl 命令(指令+参数)–真机运行
rht-vmctl start destkop\server |
–开启 |
rht-vmctl poweroff destkop\server |
–断电 |
rht-vmctl status destkop\server |
–查看状态 |
rht-vmctl reset destkop\server |
–重置 |
rht-vmctl view destkop\server |
–显示 |
rht-vmctl stop destkop\server |
–关机 |
退出登陆-图形中输入命令 gnome-session-quit --force,或者send key中ctrl+alt+f6, 文本中 exit\ctrl+D.
注:在虚拟机文本界面中使用鼠标会被虚拟机捕捉,按ctrl+alt释放
[3] 什么是shell?什么是kernel?什么是linux?
1.shell是在app和内核之间传输沟通的桥梁,保护内核的工具,shell就包裹着内核,内核下一层是硬件,为app所调动,shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更加高效、安全、低成本地使用 Linux 内核,这就是 Shell 的本质;bash是shell的一种,sh tcsh ksh等…都属于shell(bash=GNU Bourne Again Shell);
2.内核(kernel)-操作系统的一部分,对程序的优先级进行管理(CPU=计算器+寄存器+控制器,一个计算器一次只能处理一个任务,多个应用同时开启时由内核管理处理优先级);
3.linux就是一款内核,它由众多微内核组成,其源代码完全开源而linuxos=linux内核+GUN软件+厂商开发出来的软件。
[4] 如何开启shell
1.鼠标右键-open in terminal;
2.shell已经开启一个的情况下: ctrl+shift+n在另一界面开启一个新的shell,ctrl+shift+t在同一界面中开启一个新的shell,gnome-terminal(shell运行命令);
3.设计快捷键:gnome-control-center打开设置中心>>>keyboard>>>shortcuts>>>custom shortcuts>>>选择添加>>>填入快捷键名称>>>填入命令gnome-terminal到command中>>>点击disable输入快捷键;
4.关闭shell:ctrl+D\exit命令
[5] 在linux中如何运行命令
命令 |
参数 |
目标 |
ls |
-s |
test |
ls |
–size |
test |
注:
1.参数是用来指定命令的某些功能,可以加也可以不加;
2.命令和参数和目标之间要用空格分开;
3.参数中‘-’表示单词的缩写,‘–’表示单词全拼;
4.在执行命令时通常遵循这些规则,特殊情况除外;
5.命令必须在行提示符之后输入,没有行提示符的输入时是无效的,ctrl+c释放行提示符;
6.使用参数时,-a -b -c = -abc = -bca =…
[6] 命令行提示符
[kiosk@foundation0 Desktop]$
kiosk |
代表运行bash的用户 |
foundation0 |
表示bash所在主机短名称 |
@ |
信息分隔符 |
Desktop |
表示默认操作目录 |
$ |
用户身份提示符,#表示超级用户 |
[7] 文件管理命令和文件管理
-
新文件建立:touch filename…(可以同时建立多个文件,中间加空格)touch-可以用来新建文件或着修改文件时间戳;
时间戳分为:atime-文件内容被访问的时间标识 mtime-文件内容被修改的时间标识 ctime-文件属性或内容被修改的时间标识;时间戳包括:access-最后一次被访问的时间,modify-文件内容被修改的时间,change-内容和属性被修改的时间;
2. mkdir-建立新目录
mkdir(dir=directory)
mkdir -p dir1/dir2/dir3
(-p 表示建立递归目录时,当上层目录不存在时自动建立)
3. rm-删除文件
rm file
rm -f file
(其中 -f = force 表示强制删除不提示)
- rm -r 删除目录
删除目录 |
目录是一个容器,不可以只删除目录而不删除里面的文件,就像不能只拿走水杯而不带走水杯里的水 |
rm -r directory(其中-r表示递归删除) |
删除目录本身和里面的所有内容 |
rm -r -f dir |
删除目录不提示 |
rm -rf dir |
在命令参数使用过程中,-a -b -c 连用 = -abc,abc顺序无所谓 |
-
编辑文件
<1>.gedit建立:gedit filename-必须有图形,使用较少;
<2>.vim建立:vim filename>>>按i进入insert模式>>>书写内容>>>按Esc退出insert模式>>>输入:wq退出保存.
vim有三种工作模式,分别为命令模式(vim filename)、插入模式(i)和退出模式(:wq).
技巧:在命令模式下’:set 参数信息’(如’:set nu ##显示行号’,但是这是临时指令,再次打开的会是’新的’vim,不会出现行号,可以编辑vim的配置文件(vim /etc/vimrc)永久显示,set 参数信息)
[8]vim异常处理
当vim异常退出时会生成 .file.swp文件
当再次打开此文件时会出现:
[O]pen Read-Only |
[E]dit anyway |
[R]ecover |
[D]elete it |
[Q]uit |
[A]bort |
只读打开 |
继续编辑 |
恢复数据 |
删除.swap文件 |
退出 |
恢复后退出 |
无论按O、E、R、A、Q任何一个都不会使文件再次编辑时恢复正常,再次打开hello文件是还会出现以上界面,直到按(D),.swp文件被删除,vim恢复正常工作.
[9] 文件复制(cp)和文件移动(mv)
文件复制(cp) |
参数 |
被复制的 |
被粘贴到 |
cp |
|
源文件 |
目的地文件 |
cp |
-r |
源目录 |
目的地目录 |
cp |
|
源文件1 源文件2… |
目的地目录 |
cp |
-r |
源目录1 源目录2… |
目的地目录 |
目的地目录必须存在
文件移动(mv) |
被移动的 |
被移动到 |
mv |
源文件 |
目的地文件(相当于重命名) |
mv |
源目录 |
目的地目录 |
相同磁盘的文件移动只是一个重命名过程;不同磁盘的文件移动是复制删除过程
[10] 文件查看
操作 |
效果 |
cat file |
查看文件的全部内容 |
cat -b file |
-b显示行号不包含空行 |
cat -n file |
-n显示行号包含空行 |
将其倒写为tac |
表示从后往前显示文件全部内容 |
less file |
分页浏览 |
上/下 |
逐行移动 |
pageup/pagedown |
逐页移动 |
/关键字(/vim) |
高亮显示关键字,n向下匹配,N向上匹配 |
v |
进入vim模式,在vim模式中按’:wq’退回到less模式 |
q |
退出 |
操作 |
效果 |
head file |
查看文件前10行 |
head -n 3 file |
查看文件前3行 |
tail file |
查看文件后10行 |
tail -n 3 file |
查看文件后3行 |
tail对系统日志进行监控 tail -f /var/log/messages>>>logger 日志
[11] 文件的寻址
文件的地址分为:
相对路径:相对与当前系统所在目录的一个文件名称的简写,此名称省略了系统当前所在目录的名称且不以“/”开头,在命令执行时会自动在操作对象前加入“PWD”所显示的值;
绝对路径:绝对路径是文件在系统的真实位置,以“/”开头的,此命令在命执行时系统不会考虑现在所在位置的信息。
注:当操作对象是 对象1 空格 对象2 时,这两个对象之间没有任何关系.
[12] 自动补齐
TAB:系统中的TAB键可以实现命令的自动补齐,可以补齐系统中存在的命令,文件名称,和部分命令的参数,当一次TAB补齐不了时代表以此关键字开头的内容不唯一时,可以用TABX2来列出所有以此关键字开头的内容。
[13] 关于路径的命令
1.显示当前路径 pwd
2.切换路径
操作 |
功能 |
cd 目录名称 |
进入到指定目录中 |
cd - |
当前目录和当前目录之前所在目录之间的切换 |
cd ~ |
进入当前用户家目录(~表示家目录) |
cd ~user |
进入user家目录 |
cd… |
进入当前目录的上级目录 |
. |
表示当前目录…表示上级目录 |
3.文件信息查看 ls
操作 |
功能 |
ls -l file |
文件属性 |
ls dir |
目录中的内容 |
ls -d dir |
目录本身 |
ls -ld dir |
目录本身的属性 |
ls -a dir |
显示目录中所有文件(包含隐藏的即以’.'开头的文件) |
ls -S dir |
查看并且按照大小排序 |
ls -s file/dir |
查看文件大小(存储空间最小单元4k) |
[14] 系统中历史的调用
操作 |
功能 |
history |
查看历史 |
history -c |
清空当前环境中的历史 |
!数字 |
调用此行历史比如"!5"时执行历史中地5条命令 |
!test |
执行以test关键字开头的最近一条历史 |
ctrl +r [输入关键字] |
调用历史中最近一条含有此关键字的历史 |
上键/下键 |
逐条调用历史 |
[15] 在系统中获得帮助
1.查看命令大用途
whatis 命令 ##查看命令的用途,在查看过程中如果提示"noting…" ,执行mandb可以解决
2.查看命令的用法
符号 |
说明 |
命令 --help |
查看命令的基本用法,适用于多数命令 |
[] |
标示选项可以加也可以不加 |
… |
标示选项加入的个数任意 |
<> |
标示选项是必须要加入的 |
Userage: |
标示命令用法 |
Opetions: |
对参数的作用做说明 |
3.man查看命令或文件的说说明手册
man=manual man 5 文件
man的级别
1 #命令
2 #系统调用接口
3 #函数库调用接口
4 #特殊设备文件
5 #系统配置文件
6 #游戏规则说明
7 #包说明
8 #系统管理命令
9 #内核调用规则
man的基本用法
操作 |
作用 |
上/下 |
逐行查看 |
pgup/pgdn |
分页查看 |
/关键字 |
高亮显示关键字,n向下匹配,N上向匹配 |
q |
退出 |
man -k 字符串 |
下看当前字符串在系统中拥有的man的级别 |
/usr/share/doc |
系统中所有安装过的软件的帮助文档 |
[16] 系统中的通用配置符号
符号 |
含义 |
* |
匹配0到任意字符cp /etc/*.conf (rm -fr *全删) |
? |
匹配单个字符 rm -fr file?? |
[[:alpha:]] |
单个字母 |
[[:lower:]] |
单个小写字母 |
[[:upper:]] |
单个大写字母 |
[[:digit:]] |
单个数字 |
[[:punct:]] |
单个符号 |
[[:space:]] |
单个空格 |
[[:alnum:]] |
单个数字或字母 |
[[:punct:][:upper:]] |
单个符号或单个大写字母 |
[1-9] |
1位,这位是1-9的任意数字 |
[!3-5] |
1位,不是3-5的数字 |
[^3-5] |
1位,不是3-5的数字 |
[a-z] |
1位,a-z的任意字母 |
{1…3} |
3个,1 2 3 |
{1,4,7} |
3个1,4,7这三个数 |
~ |
当前用户家目录 |
~username |
指定用户的家目录 |
~+ |
当前目录. |
~- |
进入当前目录之前所在目录(olddir)cd - 中的"-" |
[17] linux系统结构
linux是一个倒树型结构,最大的目录名称叫 “/” (根目录);
FHS,是Filesystem Hierarchy Standard(文件系统层次化标准)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
linux系统中的二级目录:
名称 |
解释 |
/bin |
二进制可执行文件,系统常规命令 |
/boot |
启动目录,存放系统自动启动文件,内核,初始化程序 |
/dev |
系统设备管理文件 |
/etc |
大多数系统配置文件存放路径 |
/home/子目录 |
普通用户家目录 |
/lib |
函数库 |
/lib64/ |
64位函数库 |
/media |
临时挂载点 系统设备 |
/mnt |
临时挂载点(临时设备u盘) |
/run |
自动临时设备挂载点 |
/opt |
第三方软件安装路径 |
/proc |
系统硬件信息和系统进程信息 |
/root |
超级用户家目录 |
/sbin |
系统管理命令,通常只有root可以执行 |
/srv |
系统数据目录 固定数据 |
/var |
系统数据目录 可变的-日志 |
/sys |
内核相关数据 |
/tmp |
临时文件产生目录 |
/usr/ |
unix system resource (系统资源目录) |