xargs命令——多行变单行的实用命令

0 阅读2分钟

什么是xargs命令

xargs命令,是一个把文件中的每一行都合并为一行的命令,也可以说是把文本中所有的\n都变为空格的命令,有时,也可以通过xargs命令读取到的每一行文本都作为命令的参数来使用。在某些情况下非常实用。

xargs命令的参数

xargs命令,它的参数是这样的:

xargs [选项] [子命令 [子命令参数]]

如你所见,xargs命令与大多数命令不同的是——有子命令,这意味着,你可以通过xargs命令的子命令参数里再填入一个xargs命令。并且,xargs命令从文本文件读取到的每一行文本,就相当于管道符,都是当作命令的参数而追加在子命令的参数里的

说到xargs的子命令,其实还有一个需要注意的一点,就是子命令不能作为命令的引用

当然,如果xargs命令就不用子命令及子命令的参数,那就只是单纯的将文本文件从多行变为单行了,但想设置要读取的文本文件,要么就用-a选项,要么就要用管道符

xargs命令的选项

xargs命令的选项,除了-a外,其实并不是太重要,但如果你想看,那也可以。

选项用途
-a设定读取的文本文件
-t输出通过xargs命令处理之后的子命令

xargs命令的实例

知晓xargs命令之后,接下来就要去实际的用xargs命令了。下面就是做实例时需要的t.txt文本文件。

1 2
3 4
5 6

1. 查询根目录下的所有目录中的内容

ls | xargs ls -l

2. 将t.txt文件变为单行

xargs -a t.txt

3. 输出t.txt文件的第三个词

xargs -a t.txt | awk '{print $3}'

下篇预告

unity随机生成未知符号教程