输出重定向
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
简单了解一下输出重定向
类型 | 语法格式 | 作用 | 再解释一下 |
标准输出重定向 | 命令 > 文件 | 以覆盖的方式,把命令的正确输出,输出到指定的文件或者设备中 | 即将命令的正确输出写入到文件中 |
命令 >> 文件 | 以追加的方式,把命令的正确输出,输出到指定的文件或者设备中 | ||
标准错误输出重定向 | 命令 > 文件 | 以覆盖的方式,把命令的错误输出,输出到指定的文件或者设备中 | 即,如果命令报错了,就把错误信息写入到文件中,否则就什么也不写入 |
命令 >> 文件 | 以追加的方式,把命令的错误输出,输出到指定的文件或者设备中 |
注:只要看上面的一个表格即可。其实上面的语法几乎不会使用,因为它把正确输出结果和错误输出结果分开了,
使用起来很不方便。那么有没有即记录正确输出又记录错误信息的语法呢?当然有,下面会讲。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
真正会使用的输出重定向
类型 | 语法格式 | 作用 |
同时保存正确输出和错误输出 | 命令 > 文件 2>&1 | 以覆盖的方式,把正确输出和错误输出都保存到同一个文件中。 |
命令 >> 文件 2>&1 | 以追加的方式,把正确输出和错误输出都保存到同一个文件中。 | |
命令 &> 文件 | 以覆盖的方式,把正确输出和错误输出都保存到同一个文件中。 | |
命令 &>> 文件 | 以追加的方式,把正确输出和错误输出都保存到同一个文件中。 | |
命令 >> 文件1 2>> 文件2 | 把正确的输出追加到文件1中,把错误的输出追加到文件2中 |
注:我们最常用的就是表格中标记为红色的命令,记住即可。
注意:如果我们既不想让结果输出到屏幕上,也不想想保存到文件中,那怎么办?很简单,比如我们不想
看到ls命令的输出结果,只要 ls &> /dev/null 即可。/dev/null是系统提供的一个类似”黑洞”的东西,
所有的东西丢进里面就什么都没有了。因此让输出结果指向它,就会什么不显示了。
=============================================================================================================
输入重定向
输入重定向很少使用,简单了解即可。
语法格式为:
wc [选项] [文件名]
选项:
-c 统计字节数
-w 统计单词数
-l 统计行数
例如:
如果输入命令 wc ,那么你就可以用键盘随意向shell输入内容,然后按ctrl+d结束输入,它做相关统计。
如果输入命令 wc -l ,那么你就可以用键盘随意向shell输入内容,然后按ctrl+d结束输入,它会只统计你输入了多少行。
另外:
wc < 文件名
含义:它是将文件作为输入,然后做相关统计。很少用到这个用法。
wc << 标识符
含义:标识符是任意的。什么意思呢?就是你随意用键盘输入,当你想结束的时候,你只要输入这个标示符,然后按回车即可结束。