本文接上篇:Shell文本处理(一)
上篇中,我们详细介绍了Shell最常用的文本处理工具:cat
、find
、grep
、awk
和sed
及使用,本文将接续上篇,介绍Shell文本处理中其它最常用的工具:xargs
、sort
、uniq
、tr
、cut
、paste
和wc
,它们都是文本处理不可或缺的
1、xargs指令
xargs
(eXtended ARGuments)指令是给命令传递参数的一个过滤器,通常与管道一起使用
args
主要用于将管道或标准输入(stdin
)数据转换为命令行参数,换行和空白将被空格取代。args
能够捕获一个命令的输出,然后传递给另外一个命令
args
指令的语法格式如下:
command | xargs [options] [command]
- command:Shell指令
- options:常用选项如下:
- -n num:命令在执行时一次使用字段的数量(每行显示的最大列数)
- -d delim:修改
xargs
的分隔符,默认为空格和换行 - -l num:从标准输入一次读取行的数量
以下是一些示例:
# 多行输出转化为单行输出
cat file.txt | xargs
# 单行输出转化为多行输出
echo -e "a\nb\nc" | xargs -n 2
# 将前一个命令的输出作为后一个命令的参数输入
find ./ -perm +755 | xargs ls -l
2、sort指令
sort
指令主要用于文本的行排序。默认排序方式为升序,按每行字符的ASCII值进行升序排序
sort
指令的语法格式如下:
sort