将数据经过一定处理后输出所需要的形式,此时可以通过管道命令来实现 . 管道命令使用 | 作为界定符号 .
注意事项:
`管道命令仅会处理standard output,对于standard error output会予以忽略 .
`管道命令必须要能够接受来自前一个命令的数据成为standard input继续处理 .
【1】
选取命令 : cut ( 切记:cut处理的信息是以"行"来分析)
示例一 : cut -d ': ' -f 3
解释 : 自定义变量mypath=/cgy/path1:/cgy/path2:/cgy/path3:/cgy/path4 , 以
: 为分隔符 , 使用管道命令输出指定的第三段内容(/cgy/path3)
示例二 : export | cut -c 5-8
解释 : 自定义变量mypath , 截取指定第5~第9的字符,如果想截取第5~最后一个字符 , -c 后的参数改为5-
什么时候使用cut命令?
cut主要的用途在与将同一行里面的数据进行分解 , 最常使用在分析一些数据或文字数据的时候 . 这是因为有时候我们会以某些字符当做切割的参数 , 然后来将数据加以切割 . 但是 , cut在处理多空格相连的数据时 , 可能较为吃力 .
【2】
选取命令 : grep
示例一 : last | grep 'cgy'
示例二 : last | grep 'cgy' | cut -d ' ' -f 1
解释 : 当执行了last | grep 'cgy' 后,获取示例一的数据信息 , 接着再次执行cut -d ' ' -f 1 , 获取示例一数据信息的第一列
示例三 : last | grep -v 'cgy' (-v参数 反选不包含cgy字符的行)
解释 : 自定义文件myman.config , --color=auto 参数可以将符合规则的字符用颜色标示出来
【3】
排序命令 : sort
示例一 : cat /etc/passwd | sort -t ':' -k 3 -n
解释 : -t参数表示以某字符切割某一行的信息 , -k参数表示以哪一列排序 , -n参数表示以数字方式排序 . (:图中第一个黄线处画错,应该为再左边的一个0)
排序命令 : uniq (去掉重复元素,一般配合排序使用)
示例一 : last | cut -d ' ' -f1 | sort | uniq
解释 : 将last命令显示的最近登陆的用户信息 , 用cut截取账户名的列(第一列) , 使用sort命令进行排序 , 最后使用uniq对于重复的列进行合并只显示一个 .
示例二 : 加入参数-c即可获取该重复出现的次数 .
排序命令 : wc (统计文件的字,行,字符)
示例一 : cat myman.config | wc
解释 : -l参数表示行数 , -w参数表示字数 , -m参数表示字符数 .
示例二 : last | grep [a-zA-Z] | grep -v 'wtmp' | wc -l
解释 : 该命令作用为统计last登录信息的总行数(除去空白行和wtmp行) , 首先使用grep [a-zA-Z]选择包含大小写英文字母的行(即排除空白行) , 利用grep -v ' wtmp'排除wtmp那一行 , 最后配合wc -l统计剩下符合要求的总行数 .
注意事项:
`管道命令仅会处理standard output,对于standard error output会予以忽略 .
`管道命令必须要能够接受来自前一个命令的数据成为standard input继续处理 .
【1】
选取命令 : cut ( 切记:cut处理的信息是以"行"来分析)
示例一 : cut -d ': ' -f 3

示例二 : export | cut -c 5-8

什么时候使用cut命令?
cut主要的用途在与将同一行里面的数据进行分解 , 最常使用在分析一些数据或文字数据的时候 . 这是因为有时候我们会以某些字符当做切割的参数 , 然后来将数据加以切割 . 但是 , cut在处理多空格相连的数据时 , 可能较为吃力 .
【2】
选取命令 : grep
示例一 : last | grep 'cgy'

示例二 : last | grep 'cgy' | cut -d ' ' -f 1

解释 : 当执行了last | grep 'cgy' 后,获取示例一的数据信息 , 接着再次执行cut -d ' ' -f 1 , 获取示例一数据信息的第一列
示例三 : last | grep -v 'cgy' (-v参数 反选不包含cgy字符的行)

【3】
排序命令 : sort
示例一 : cat /etc/passwd | sort -t ':' -k 3 -n

解释 : -t参数表示以某字符切割某一行的信息 , -k参数表示以哪一列排序 , -n参数表示以数字方式排序 . (:图中第一个黄线处画错,应该为再左边的一个0)
排序命令 : uniq (去掉重复元素,一般配合排序使用)
示例一 : last | cut -d ' ' -f1 | sort | uniq

解释 : 将last命令显示的最近登陆的用户信息 , 用cut截取账户名的列(第一列) , 使用sort命令进行排序 , 最后使用uniq对于重复的列进行合并只显示一个 .
示例二 : 加入参数-c即可获取该重复出现的次数 .

示例一 : cat myman.config | wc

解释 : -l参数表示行数 , -w参数表示字数 , -m参数表示字符数 .
示例二 : last | grep [a-zA-Z] | grep -v 'wtmp' | wc -l

解释 : 该命令作用为统计last登录信息的总行数(除去空白行和wtmp行) , 首先使用grep [a-zA-Z]选择包含大小写英文字母的行(即排除空白行) , 利用grep -v ' wtmp'排除wtmp那一行 , 最后配合wc -l统计剩下符合要求的总行数 .