程序员

linux 数据流重导向

2018-06-29  本文已影响0人  liwsh

数据流重导向,是执行一个命令之后,本来应该展示在屏幕上的内容,导流到另外一个地方(比如文件)

1. >,>>,2>,2>>的区别

  1. 比如执行shell命令:find /home -name .bashrc > list_right 2> list_error
    错误的提示会进入list_error文件,查找到的文件目录会进入list_right文件
  2. 如果要把错误信息丢掉,这样做:find /home -name .bashrc 2> /dev/null,/dev/null你可以理解为一个黑洞,任何东东丢进去都不见了。
  3. 如果要把错误信息和正确信息输入同一个文件,这么办:find /home -name .bashrc > list 2>&1,这样都进入了list文件。

2.$?(指令回传值),&& ||

&&,连接2个指令,如果前一个指令执行成功,才执行第二个
||,连接2个指令,如果前一个指令执行失败,才执行第二个
具体描述如下:


image.png

比如:ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe
我不知道tmp下面的abc目录是否存在,如果不存在就创建,如果创建成功,就创建hehe文件。

上一篇 下一篇

猜你喜欢

热点阅读