1.多命令顺序执行
多命令执行符 | 格式 | 作用 |
---|---|---|
; | 命令1;命令2 | 多个命令顺序执行,命令之间没有任何逻辑联系 |
&& | 命令1 && 命令1 | 逻辑与。当命令1正确执行,则命令2才会执行。当命令1执行正确,则命令2不会执行 |
|| | 命令1 || | 逻辑或。当命令1执行不正确,则命令2才会执行。当命令1正确执行,则命令2不会执行 |
- 命令:
dd if=输入文件 of=输出文件 bs=字节数 count=个数
选项:
if=输入文件 指定源文件和原设备
of=输出文件 指定目标文件和目标设备
bs=字节数 指定一次输入/输出多少个字节,即把这些字节看作一个数据块
count=个数 指定输入/输出多少个数据块
举个栗子:
(1)顺序执行
命令:date ; dd if=/dev/zero of=/root/testfile bs=1K count=100000;date
- 对dd的解释: 除了简化操作,在dd命令执行的时候有一些帮助,dd在Linux当中进行磁盘复制,或者数据复制功能,但他不是cp,cp只能复制文件,dd能复制特殊命令,特殊文件,也能复制分区,甚至整个硬盘,不光复制这个分区和硬盘当中的数据,还复制了分区和这个硬盘的文件系统。
- bs来指定一个大小,每次复制都复制这么大。dd主要是用来磁盘复制。
/dev/zero这是一个特殊文件, 把它作为源文件,向目标文件不停的写入 - 作用: 执行两遍date,中间执行这条命令,就可以只当当前系统创建一个100M的文件需要多长的时间间隔。妙啊! “;” 在这个地方有点意义。但是逻辑与、逻辑或会更有意义。
(2)逻辑与:
注释: 有些命令是前一条命令执行之后,后一条命令才能执行,比如软件包安装的时候 ./configure && make && make install
当第一条命令正确执行,在执行第二条,当第二条正确执行,在执行第三条。有个先后关系。
(3)逻辑或
(4)判断一条命令是否正确
命令:执行命令 && echo yes || echo no
2. 管道符
- | 链接两个命令,当第一个命令有正确输出的时候,命令2去操作第一个命令的输出。命令2的执行依赖第一个命令的正确执行。
- 命令格式: 命令1 | 命令2
作用:命令1的正确输出作为命令2的操作对象
举个栗子:
- (1)命令:
ll -a /etc/ | more
提示:在写shell脚本是会有多个管道符进行嵌套,目的是截取一个重要的数值。
(2)命令:netstat -an | grep "ESTABLISHED"
Netstat -a查询所有的网络链接。
3. grep搜索命令
命令: grep [选项] "搜索内容" 文件名
选项:
-i 忽略大小写
-n 输出行号
-v 反向查找
--color=aoto 搜索出的关键字用颜色显示
4.总结
符号 | 作用 |
---|---|
; | 多命令执行,之间没有逻辑关系 |
&& | 命令1正确执行,命令2才会执行。 |
|| | 命令1不正确执行,命令2才会执行。 |
|(管道符) | 链接两个命令,当第一个命令有正确输出的时候,命令2去操作第一个命令的输出。命令2的执行依赖第一个命令的正确执行。 |