管道命令可以对输出的数据进行一些处理,得到我们最终想要的数据,话不多说直接看下么
1 cut
cut 可以让我们将一段信息的某一部分剪切出来显示,对于多行的输出信息,可以对每一行的信息做cut的处理
cut -d '分隔符' -f 变量
cut -c 字符范围
如
test=a:b:c:d
echo test
a:b:c:c
echo $test | cut -d ':' -f 1
a
echo $test | cut -d ':' -f 2
b
下标是从1开始的,cut 通过分隔符“:”把字符分成四段,然后通过 -f 参数,获取第几段的内容
echo $test | cut -c 2
:
echo $test | cut -c 2-
:b:c
echo $test | cut -c 2-3
:b
参数 -c 可以对指定字符串获取某个区间的值
除了对这些简单的字符内容进行处理,cut的命令还有一个很大的用处就是对一些多行的结果进行处理
如我们在某个目录进行ll操作
这个时候我们如果不想要前面的一部分字符串可以这样做
ll | cut -c 13-
结果前面的12个字符就不见了
再看一个例子
ll | cut -d ' ' -f 1
2 grep 命令
可以分析每一行的信息,如果其中有我们需要的信息就显示出来
如
ll | grep test
会显示test开头的文件
ll | grep -v test
显示不包含test的文件
显示文件的行数
查找包含test的文件的个数
还可以从文件读取内容,并查找包含我们需要的内容
我们有一个文件aaa ,里面的内容如下
从文件中查找test1的文件,并且关键字test1 采用其他颜色显示