加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_镇江站长网 (https://www.0511zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux管道命令详解 - Linux系统

发布时间:2014-06-01 23:23:26 所属栏目:Linux 来源:站长网
导读:Linux的管道命令是'|',通过它可以对数据进行连续处理,其示意图如下: 注意: 1)管道命令仅为处理标准输出(即正确的输出),对于标准错误输出,将忽略 2)管
Linux的管道命令是'|',通过它可以对数据进行连续处理,其示意图如下:

注意:

1)管道命令仅为处理标准输出(即正确的输出),对于标准错误输出,将忽略

2)管理命令的后一个命令必须能将前一个命令的标准输出变为它的标准输入才可以,如 less,more,head,tail就可以,而ls, cp, mv就不行。

下面我们看几个管道命令。

cut - 列选取命令

cut以行为单位,根据分隔符把行分成若干列,这样我们就可以指定选取哪些列了。

cut -d '分隔字符' -f 选取的列数  
echo $PATH|cut -d ':' -f 2  --选取第2列  
echo $PATH|cut -d ':' -f 3,5  --选取第3列和第5列  
echo $PATH|cut -d ':' -f 3-5  --选取第3列到第5列

cut有一个问题,就是在处理多个空格分隔的时候比较吃力。

grep - 行选取命令

grep分析一行数据,若当中有我们所需要的信息,则显示该行,否则忽略。

grep [-cinv] '查找的字符串' filename

-c:计算找到的次数

-i:忽略大小写

-v:反向选择

-n:输出第几行

sort - 排序

# cat /etc/passwd | sort   
adm:x:3:4:adm:/var/adm:/sbin/nologin  
avahi-autoipd:x:100:156:avahi-autoipd:/var/lib/avahi-autoipd:/sbin/nologin  
avahi:x:70:70:Avahi daemon:/:/sbin/nologin  
bin:x:1:1:bin:/bin:/sbin/nologin  
daemon:x:2:2:daemon:/sbin:/sbin/nologin  
dbus:x:81:81:System message bus:/:/sbin/nologin  
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin  
......

从上面的结果我们可以知道,sort默认是以第一个字符升序排序,如果我想要以第3列降序数字排序怎 么办?

# cat /etc/passwd | sort -t ':' -k 3 -rn  
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin  
test:x:504:505::/home/test:/bin/bash  
sungh:x:503:504::/home/sungh:/bin/bash  
zhoufei:x:502:503::/home/zhoufei:/bin/bash

(编辑:应用网_镇江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!