Linux bash重定向_First Snowflakes的博客-CSDN博客

重定向标准输出和错误输出

>和1>只能将正常信息重定向
2> 只能将错误信息重定向
&>可以将错误信息或者正常信息重定向输出

如下, ls 1>a.txt,可将ls指令的输出引入a.txt,而不是打印到屏幕;

Linux bash重定向_First Snowflakes的博客-CSDN博客

如下,ls >a.txt同ls 1>a.txt

Linux bash重定向_First Snowflakes的博客-CSDN博客

如下,ls 2>a.txt只能将错误信息重定向到a.txt

Linux bash重定向_First Snowflakes的博客-CSDN博客

如下,ls &>a.txt能将所有信息重定向到a.txt

Linux bash重定向_First Snowflakes的博客-CSDN博客

 

重定向到/dev/null

例如,ls &>/dev/null 抛弃所有输出;

应用例子:source fileName, 获取fileName的绝对路径:

DirForScriptSelf="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd)"

 首先,${BASH_SOURCE[0]}表示fileName的相对路径,

dirname -- "${BASH_SOURCE[0]}"表示fileName所在文件夹的路径;

然后cd到fileName所在文件夹的路径,然后,借助pwd获取fileName所在文件夹的路径。但是, cd指令是由输出的,所以用&> /dev/null抛弃,最后只保留pwd命令的返回值了!

Note: cd -- 中的--可以去掉,没有差别;


Ref:

Linux中的/dev/null:

https://baijiahao.baidu.com/s?id=1730629989727646104&wfr=spider&for=pc

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/405139

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年4月25日 下午6:08
下一篇 2023年4月25日 下午6:08

相关推荐