1.概述
数据重定向就是将某个命令执行后应该要出现在屏幕上的数据, 给他传输到其他的地方,通常执行一条命令的时候会有标准输出和标准错误输出
2.标准输出和标准错误输出
标准输出是指命令执行之后,传回正确信息的输出目标
如执行 ll /home
标准错误输出是命令执行失败后,所传回错误信息的输出目标
标准输入(stdin):编号为0 使用<或<<
标准输出(stdout):编号为1 使用>或>>
标准错误输出(stderr):编号为2 使用>或>>
示例:
某一条命令执行后会有标准输出和标准错误输出,将标准输出的内容输出到文件中。
1>:以覆盖的方法,将正确的数据输出到文件;
注:只有正确的才会输出到文件中
# bash
ll /root /roo 1>fileName
如下图,demo.log中无内容
如下图,标准输出的内容会存入到demo.log中
某一条命令执行后会有标准输出和标准错误输出,将标准错误输出的内容输出到文件中。
2>:以覆盖的方法,将错误输出的数据输出到文件;
# bash
ll /root /roo 2> fileName
如下图:正确的部分会在控制台显示,错误的将记录到日志
另外2种(示例略)
1>>:以累加的方法,将正确的数据输出到文件;
2>>:以累加的方法,将错误输出的数据输出到文件;
某一条命令执行后会有标准输出和标准错输误输出,将标准出和标准错误输出的内容输出到文件中。
# bash
ll /root /roo > fileName 2>&1
还是上面的案例,只不过要求结果文件不保存
# bash
ll /root /roo > /dev/null 2>&1
3.标准输入
打印文本中的行数
wc -l < 文本
并且可以将打印出来的重导向到新的文件中
wc -l< 文本 > count
利用标准输入编写文件
cat >> demo.txt<< "abc"
示例如下:
方式一:写入结束 最后输入与指定的相等时结束 abc=abc 时结束
方式二:最后一处也可以不写字符串,如直接写a,那么在编辑是当输入a就结束