Linux 输出重定向>和>>
2017-05-31 15:59
344 查看
> 是定向输出到文件,如果文件不存在,就创建文件;如果文件存在,就将其清空;一般我们备份清理日志文件的时候,就是这种方法:先备份日志,再用`>`,将日志文件清空(文件大小变成0字节)。
>> 这个是将输出内容追加到目标文件中。如果文件不存在,就创建文件;如果文件存在,则将新的内容追加到那个文件的末尾,该文件中的原有内容不受影响。(摘自:https://zhidao.baidu.com/question/274680094.html)
例如我们要将一个文件夹的内容保存到文本文件中去,也就是将ls命令打印出来的内容都写到文本中去可以这样:
ls -al >> a.txt
这样a.txt文件中就是ls命令打印出来的内容了。
另外解释一下命令 “ls >/dev/null 2>&1”
按照前面的解释可以知道将ls程序运行输出的结果重定向到/dev/null文件中去,后面的2 > &1有是什么意思呢?
这里有必要将上面的这个命令完整形式写出来:
ls 1 >/dev/null 2>&1
可以看出和原来命令的区别。先来说明一下,Linux系统中
0:表示键盘输入(stdin)
1:表示标准输出(stdout),系统默认是1
2:表示错误输出(stderr)
所以1 > /dev/null 表示将1(标准输出)重定向到/dev/null文件,将2(标准错误输出)重定向到1。2>&1表示的是2的输出重定向等同于1 的输出重定向,也就是/dev/null文件。如果写成这种形式:
ls 1 >/dev/null 2>1
其实也能实现标准错误输出的重定向,但是重定向的位置不是标准输出,而是文件“1”,系统会创建一个文件“1”然后保存标准错误输出的信息。
大神/dev/null
相关文章推荐
- Linux 输出重定向>和>>的区别
- 如何关闭linux系统中的覆盖输出重定向(>)功能
- Linux 输出重定向>和>>的区别
- 【Linux常用命令】 重定向输出 > 和 >>
- Linux 输出重定向>和>>的区别是什么?
- Linux 输出重定向>和>>的区别
- linux 输出重定向 >,>>
- Linux 输出重定向>和>>的区别
- Linux 输出重定向>和>>的区别
- Linux 输出重定向>和>>的区别
- Linux 输出重定向>和>>的区别
- Linux-重定向输出>和>>
- Linux命令输出结果到文件:使用>>重定向符号
- Linux 输出重定向>和>>的区别是什么
- Linux 输出重定向>和>>的区别是什么?
- Linux下Shell输出重定向到空设备文件1>/dev/null 2>&1
- Linux 输出重定向>和>>的区别是什么?
- linux输出信息调试信息重定向
- Linux 将标准输出重定向到剪切板
- linux之输入/输出重定向