1.1 linux命令的分类
Ø 内部命令
内部命令: 属于Shell解释器的一部分
Ø 外部命令
外部命令:独立于Shell解释器之外的程序文件
1.2 linux命令行的格式 命令字 [选项] [参数]
1)命令字:即命令名称,它是命令主体。尤其注意:区分大小写。
例子:在“ls -l /home”命令行中,“ls”是命令字,“-l”是选项,“/home”是参数
1.3 获得帮助命令
1) 使用help命令:查看各Shell内部命令的帮助信息。 例如:help pwd
2) 使用“--help”选项。若改命令没有改参数,则只会提示简单的命令格式。
例如 :ls --help
3) 使用man手册页。
它是linux系统中最为常用的一种帮助形式。这些信息安装特定的格式进行组织,通过统一的手册页浏览程序man进行阅读。例如:man tar
使用“á”、“â”方向键滚动文本
使用Page Up和Page Down键翻页
按Q或q键退出阅读环境、按“/”键后查找内容
理解一下这个命令:man ls | col -b > lshelp.txt(让学生详细记录一下该行意思)
注意:man命令不仅能够查看命令帮助,还能够查看配置文件帮助,例如“man resolv.conf”
4) 使用info命令 功能与man类似,但信息更加详尽,而且提供了不同主题间的跳转功能。通常使用man就能满足绝大部分的需求,因此info用的较少。
2.文件和目录管理
2.1 目录操作命令
1)pwd(print working diretcory):查看当前的工作目录。一般不需要添加任何选项和参数。
2)cd(change directory):切换工作目录。
格式: cd 目录名称
Ø 绝对路径:以“根”作为起点。例如:/etc/sysconfig/
Ø 相对路径:以当前目录为起点,在开头不使用“/”,
u 直接使用目录名或文件名,表示当前目录下的文件或目录
u 使用一个“.”明确表示从当前目录作为起点,例如:./aa
u “..”表示从当前目录的上一级目录作为起点
u “~aa”表示用户aa的宿主目录。
思考:“~”表示哪个位置?
小技巧: cd - 返回原来所在的目录位置。
3) ls命令:显示目录内容(支持通配符:? *)
常用命令选项
-l :以长格式显示
-a:显示所有子目录和文件的信息,包括隐藏文件
-d:显示目录本身的属性
-A:类似于“-a”,但不显示“.”和“..”目录的信息
-h:以更易读的字节单位(K、M等)显示信息
-R:递归显示内容
--color:以颜色区分不同类型文件
小技巧:alias myls=”ls -alh”
4) mkdir(make directory) 创建新的目录
mkdir命令用于创建新的空目录,可以同时创建多个目录
较常用到的选项为“-p”,该命令用于创建嵌套的多层目录结构
若不使用“-p”选项,则只能在已经存在的目录中创建其他子目录
5)du(estimate file space usage)统计目录及文件的空间占用情况
-a:统计时包括所有的文件,而不仅仅只统计目录
-h:以更易读的字节单位(K、M等)显示信息
-s:只统计每个参数所占用空间总的大小
小技巧:du -sh.
2.2 文件操作命令
1)touch 新建空文件。可同时创建多个文件。
可更新文件修改的时间 cd /etc touch * 更新/etc修给过文件的时间
可以创建连个文件 例如touch {a,b}_{a,b.c} 会创建六个文件
aa ab ac bb ba bc cc ca cb
2)file 查看文件类型。
例如: file /bin/ls /etc/init.d/network /etc/resolv.conf
3) cp(copy)复制文件或目录 可同时复制多个目录
常用命令选项
-r:递归复制整个目录树
-p:保持源文件的属性不变
-f:强制覆盖目标同名文件或目录
-i:需要覆盖文件或目录时进行提醒
-a 保留权限的同时,递归复制整个文件或者目录
4)rm(remove)删除文件或目录
常用命令选项
-f:强行删除文件或目录,不进行提醒
-i:删除文件或目录时提醒用户确认
-r:递归删除整个目录树
5)mv(move)移动文件或目录;如果目标位置与原文件位置相同,则效果是对文件或目录改名。
6)which:查找linux命令文件并显示所在的位置。其搜索范围由用户的环境变量PATH决定。(可执行echo $PATH查看)。
小提问:为什么用which查找cd时,找不到对应的程序文件。
7)find命令。查找文件或目录 find 要查找的目录 条件
-name:按文件名称查找 允许使用“*”及“?”通配符
-size:按文件大小查找 一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件。常用的容量单位包括k(注意是小写)、M、G。
-user:按文件属主查找
-type:按文件类型查找 普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。块设备指的是成块读取数据的设备(如硬盘、内存等),而字符设备指的是按单个字符读取数据的设备(如键盘、鼠标等)
例如:find /boot -size +1024k -a -name “vm*” [a=and;o=and(逻辑运算符)]
Find /boot -user aa -exec ls –ld {} \
8) ln(link) 。为文件或目录建立连接。
符号链接:指向原始文件所在的路径,又称为软链接
硬链接:指向原始文件对应的数据存储位置
不能为目录建立硬链接文件
硬链接与原始文件必须位于同一分区(文件系统)中
硬链接相当于创建一个新文件,符号连接相当于创建快捷方式
例如: ln [–s] 如果不加“-s”就是硬连接
2.3 文件内容操作命令。
1)cat。显示并连接文件的内容
cat命令本来用于连接多个文件的内容,但在实际使用中更多的用于查看文件内容
当文件内容较多时,使用cat命令往往只能看到文件的最后一部分内容,而无法分页逐屏显示
2)more和less 分页查看文件内容。这两个命令功能类似。
more 查看会在左下角显示当前进度;less没有。
More 当文件内容超过一屏时,enter下跳一行,空格下翻一屏,b上翻一屏
more可以结合管道符号使用
ls –lh /etc/*.conf |more(注意:无法上翻页;但less可以)
3) head和tail。查看文件开头和末位的部分内容。
tail命令
用途:查看文件结尾的少部分内容(默认为10行)
格式:tail -n 文件名 tail -f 文件名(常用于实时查看日志更新)
4) wc 统计。不加任何参数,都统计
-l:统计行数
-w:统计单词个数
-c:统计字节数
5)grep 检查,过滤文件内容。在文件中查找并显示包含指定字符串的行
常用命令选项
-i:查找时忽略大小写
-v:反转查找,输出与查找条件不相符的行
查找条件设置
要查找的字符串以双引号括起来
“^……”表示以……开头,“……$”表示以……结尾
“^$”表示空行
例如:grep -v "^#" /etc/hosts
dmesg | grep "USB" 查找系统启动时识别的USB总线信息
2.4 归档及压缩命令
1)gzip命令、bzip2命令 制作压缩和解压缩文件。
gzip [-9] 文件名...
gzip -d .gz格式的压缩文件
bzip2 -d *.bz2格式的压缩文件
常用命令选项
-9:表示高压缩比,多在创建压缩包时用
-d:用于解开已经压缩过的文件
2)tar命令。制作/释放归档文件。
格式:tar [选项]... 归档文件名 源文件或目录
tar [选项]... 归档文件名 [-C 目标目录]
常用命令选项
-c:创建 .tar 格式的包文件
-x:解开.tar格式的包文件
-v:输出详细信息
-f:表示使用归档文件
-p:打包时保留原始文件及目录的权限
-t:列表查看包内的文件
-C:解包时指定释放的目标文件夹
-z:调用gzip程序进行压缩或解压
-j:调用bzip2程序进行压缩或解压
3. 使用vi文本编辑器
配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表;对配置文件的管理和维护需要使用文本编辑器;vim是vi编辑器的增强版本,但是习惯上也将vim称作vi ,可以建立vi到vim的命令别名,以方便使用。
1) vi编辑器的工作模式
三个模式:命令模式、输入模式、末行模式
1)命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作
2)输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。处于输入模式时,vi编辑器的最后一行会出现“-- INSERT --”的状态提示信息
3)末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号“:”提示符
2) 命令模式中的基本操作
A.光标的移动。
操作类型
|
操作键
|
功能
|
光标方向移动
|
á、â、ß、à
|
上、下、左、右
|
翻页
|
Page Down或Ctrl+F
|
向下翻动一整页内容
|
Page Up或Ctrl+B
|
向上翻动一整页内容
| |
行内快速跳转
|
Home键或“^”、数字“0”
|
跳转至行首
|
End键或“$”键
|
跳转到行尾
| |
行间快速跳转
|
1G或者gg
|
跳转到文件的首行
|
G
|
跳转到文件的末尾行
| |
#G
|
跳转到文件中的第#行
| |
行号显示
|
:set nu
|
在编辑器中显示行号
|
:set nonu
|
取消编辑器中的行号显示
|
B.复制,粘贴,删除
操作类型
|
操作键
|
功能
|
删除
|
x或Del
|
删除光标处的单个字符
|
dd
|
删除当前光标所在行
| |
#dd
|
删除从光标处开始的#行内容
| |
d^
|
删除当前光标之前到行首的所有字符
| |
d$
|
删除当前光标处到行尾的所有字符
| |
复制
|
yy
|
复制当前行整行的内容到剪贴板
|
#yy
|
复制从光标处开始的#行内容
| |
粘贴
|
p
|
将缓冲区中的内容粘贴到光标位置处之后
|
P
|
粘贴到光标位置处之前
|
C.文件内容查找
操作键
|
功能
|
/word
|
从上而下在文件中查找字符串“word”
|
?word
|
从下而上在文件中查找字符串“word”
|
n
|
定位下一个匹配的被查找字符串
|
N
|
定位上一个匹配的被查找字符串
|
D.撤销编辑及保存。
u
|
按一次取消最近的一次操作
|
多次重复按u键,恢复已进行的多步操作
| |
U
|
用于取消对当前行所做的所有编辑
|
ZZ
|
保存当前的文件内容并退出vi编辑器
|
3) 末行模式中的基本操作。
A.保存及退出
功能
|
命令
|
备注
|
保存文件
|
:w
|
|
:w /root/newfile
|
另存为其它文件
| |
退出vi
|
:q
|
未修改退出
|
:q!
|
放弃对文件内容的修改,并退出vi
| |
保存文件退出vi
|
:wq
|
|
B.打开新文件或读入其它文本文件
命令
|
功能
|
:e ~/install.log
|
打开新的文件进行编辑
|
:r /etc/filesystems
|
在当前文件中读入其他文件内容
|
C.文件内容替换
命令
|
功能
|
:s /old/new
|
将当前行中查找到的第一个字符“old” 串替换为“new”
|
:s /old/new/g
|
将当前行中查找到的所有字符串“old” 替换为“new”
|
:#,# s/old/new/g
|
在行号“#,#”范围内替换所有的字符串“old”为“new”
|
:% s/old/new/g
|
在整个文件范围内替换所有的字符串“old”为“new”
|
:s /old/new/c
|
在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
|
转载于:https://blog.51cto.com/550551527/841231