流、管道、重定向

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/happy_teemo/article/details/80026955

重定向:显示的命令结果输送到其他地方。
管道:两个命令连起来。一个输出一个输入。

命令的结果可以“流向”:终端,文件,其他命令。

>和>>:重定向到文件
>新文件
>>追加

/dev/null 文件是特殊文件,不是一个目录。此文件具有唯一的属性:它总是空的。它能使发送到/dev/null 的任何数据作废,就好像这些数据掉进了无底的黑洞一般。

stdin,stdout,stderr:标准输入,标准输出,标准错误输出

2> 重定向错误信息
2>> 追加
2>&1 将标准错误输出重定向到与标准输出相同的地方

<:从文件中读取
<<:从键盘读取
输入END来结束输入,END被称为结束字符串。

|:管道
du | sort -nr | head
du 深入遍历当前目录下每个子目录,把所有文件的大小都做一个统计
sort -nr sort命令的-n参数是按以数值来排序(此处是文件大小)排序,默认是小的在前;-r参数是倒序排列,有了-r参数,-n参数就变成大的数值在前了
head 列出前十个最大的数值(这里是文件大小)

sudo grep log -Ir /var/log | cut -d : -f 1 | sort | uniq
sudo grep log -Ir /var/log :遍历/var/log这个目录及其子目录,列出所有包含log这个关键字的行。-I参数用于排除二进制文件。-r参数用于递归遍历。sudo命令是为了以root身份查找系统文件夹/var/log。
cut -d : -f 1 从命令1的输出结果中只剪切出文件名那一列(由冒号分隔的第一个区域)。
sort 将文件名的列以首字母的字典顺序进行排序。
uniq : 去掉重复的文件名。

猜你喜欢

转载自blog.csdn.net/happy_teemo/article/details/80026955