您的位置:首页 > 运维架构 > Shell

Linux学习日记 —— 10.3.4 Shell基础-Bash基本功能-多命令顺序执行与管道符

2018-03-02 15:20 1476 查看
1. 多命令顺序执行

多命令执行符基本格式作用
;命令1 ; 命令2多个命令按照先后顺序执行,命令之间没有逻辑关系。
&&命令1 && 命令2逻辑与。 只有当命令1执行正确,命令2才会执行。
||命令1 || 命令2逻辑或。 只有当命令1执行不正确,命令2才会执行。
示例:

[root@localhost ~]# ls; date; cd/user; pwd


磁盘复制命令dd,它不同于cp命令,cp命令只能复制文件,dd命令可以复制特殊文件,也可以复制分区,甚至整个硬盘,不仅会复制数据,而且会复制文件系统。

磁盘复制命令dd:

[root@localhost ~]# dd if=输入文件 of=输出文件 bs=字节数 count=个数
选项:
if=输入文件:指定源文件或源设备。
of=输出文件:指定目标文件或目标设备。
bs=字节数:指定每次输入或输出多少字节,即把这些字节看做一个数据块。
count=个数:指定输入或输出多少个数据块。


示例:

[root@localhost ~]# date ; dd if=/dev/zero of=/root/testfile bs=1k count=100000 ; date


/dev/zero 是个特殊文件,是0。

通过这个测试,可以知道Linux系统复制一个100M的文件需要多长时间。

示例:

[root@localhost ~]# ./configure && make && make install
当命令./configure执行正确,才会执行make,当make也执行正确,才会执行make install。

[root@localhost ~]# 命令1 && echo yes || echo no
可以用这条命令来判断,命令1是否执行正确。


2. 管道符

管道符是一个竖线。

[root@localhost ~]# 命令1 | 命令2

作用:将命令1的正确输出作为命令2的操作对象。
注意:命令1必须有正确输出才行,否则命令2无法执行。


示例:

[root@localhost ~]# ll -a /etc | more
more命令可以分屏显示文件的内容,但不可以直接分屏显示命令的结果。
在它之前加了管道符,就可以将前一命令的输出结果作为它的操作对象。

[root@localhost ~]# netstat -an | grep -i established
查看计算机中已经连接的网络状态。
通过此命令也可以识别出当前计算机有几个人在连接。


搜索查找命令grep:

[root@localhost ~]# grep [选项] 要搜索的内容 文件名
选项:
-i:查找时忽略大小写。
-n:输出行号。
-v:反向查找(把不含有要搜索字符串的所有行显示出来)。
--color=auto:将匹配的关键字用颜色显示。

作用:在文件中搜索查找字符串,显示匹配字符串所在的行。
说明:[选项] 和 查找的字符串 之间的顺序可以互换。
查找的字符串可用引号(单引号或双引号)括起来,也可省略引号。


示例:

[root@localhost ~]# grep "root" -i -n --color=auto /etc/passwd
把/etc/passwd文件中含有root字符串的所有行显示出来。
不区分大小写,显示行号,匹配到的root用颜色显示。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell linux