linux中竖线'|',双竖线‘||’,&和&&的意思(转)

linux中竖线'|',双竖线‘||’,&和&&的意思(转),第1张

对于初学者来说这几个意思可能只知道其中几个的意思,下面我们来看一下。

1、竖线‘|’ ,在linux中是作为管道符的,将‘|’前面命令的输出作为'|'后面的输入。举个例子

加上|head -n1 之后

2、双竖线‘||’,用双竖线‘||’分割的多条命令,执行的时候遵循如下规则,如果前一条命令为真,则后面的命令不会执行,如果前一条命令为假,则继续执行后面的命令。

举例输入1小于2双竖线输出b,前面为真,后面不执行则没有输出b,输入1大于2双竖线echo b,前面为假则输出b。

再举一个实用性的例子,判断文件是否存在,不存在则创建,存在就什么都不执行。

3、&同时执行多条命令,不管命令是否执行成功

4、&&可同时执行多条命令,当碰到执行错误的命令时,将不再执行后面的命令。如果一直没有错误的,则执行完毕。

管道符号,是unix一个很强大的功能,符号为一条竖线:"|"。

用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command 2的输入传给command 2,例如:

$ls -s|sort -nr (请注意不要复制$符号进去哦)

-s 是file size,-n是numeric-sort,-r是reverse,反转

该命令列出当前目录中的文档(含size),并把输出送给sort命令作为输入,sort命令按数字递减的顺序把ls的输出排序。

$ls -s|sort -n

按从小到大的顺序输出。

当然还可进行多次 *** 作,如下面的功能为先去除纯数字,再由sed将竖线(这里不是管道符号)替换为空格,再将结果取出来排序,再进行结果的选择显示,不明白可查看 排序和分页。

cat filename |grep -v '^[0-9]*$' | sed 's/|/ /g' |sort -nrk 8 -nrk 9 |tail -n +1 |head -n 10


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7312149.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存