(资料图)
你是否见过bash ... 2>&1 1>file.txt
的写法? 还没发现这样的写法有什么问题? 那么恭喜你, 看完本文你又将学会一个新知识!
以引言中命令为例, 2>&1
表示将错误输出重定向到标准输出, 1>file.txt
表示将标准输出重定向到file.txt
文件, 看起来的意思就是将标准输出和错误输出全都重定向到file.txt
?
错啦! 上述命令只会标准输出重定向到file.txt
文件, 而错误输出还是重定向到终端(或者叫做命令行, 控制台, 屏幕). 因为首先解析的是2>&1
,此时的1
指向的还是标准输出, 即终端, 解析到1>file.txt
时, 标准输出才被重定向到file.txt
. 下面我将用一个例子来验证我的结论:
test.sh
是一个简单的脚本, 会把STDOUT
输出到标准输出, 将STDERR
输出到错误输出
$ cat test.shecho "STDOUT" >&1echo "STDERR" >&2
我们先验证脚本的正确性, 标准输出和错误输出都被正确的捕捉到了, 脚本可以同时输出标准输出和错误输出, 正确性得以验证.
现在我们再来验证我一开始的结论, 执行bash ... 2>&1 1>file.txt
形式的命令, 可以看到错误输出STDERR
被输出到了终端, 而file.txt
中仅有标准输出STDOUT
那么应该怎么改成我们想要的结果呢? 很简单, 将2>&1
和1>file.txt调换个位置即可, 即bash ... 1>file.txt 2>&1
; 或者使用bash ... &>file.txt
, 都可以达到我们想要的效果
重定向另外一个需要注意的事项就是: 执行类似于command > file.txt
的命令时, 会首先判断file.txt
是否存在, 若存在则先清空文件, 若不存在则创建文件, 随后才会执行command
假设有一个已经排好序的文件file.txt
, 我们对这个文件去重的话, 执行uniq file.txt > file.txt
会直接清空文件
想要不生成额外的临时文件做到去重的话, 正确的做法应该是使用管道|
配合tee
命令, 而不是使用重定向
关键词:
你是否见过`bash 2>&11>file txt`的写法?还没发现这样的写法有什么问题?那么恭喜你,看完本文你又将学会一个新知识!2023-05-09
前不久,在内蒙古鄂尔多斯市准格尔旗新能源科技产业基地,内蒙古天晟新科技有限公司太阳能组件生产项目生产2023-05-09
1、晋江市季延中学由著名爱国华侨郭文梯先生1989年捐资创建,1991年开始办学,1994年破格晋升省二级达标中学,2023-05-09
格隆汇5月9日丨理想汽车涨3%,菲斯克、Rivian、小牛电动涨1%,特斯拉涨0 8%,蔚来、通用汽车跟涨。2023-05-09
直播吧5月8日讯曼城名宿亚亚-图雷的经纪人塞卢克向媒体表示,他们已经让巫师解除了针对瓜迪奥拉的欧冠诅咒2023-05-08
极目新闻记者张理晶通讯员李竹5月5日凌晨,一名女婴在武汉市救助管理站工作人员的接力守护下呱呱坠地。婴儿2023-05-08
观点网讯:5月8日,保利发展控股集团股份有限公司公告称,“2023年度第一期住房租赁定向资产支持票据信托”2023-05-08
酒便利选举蔡立斌为公司董事长2022年公司亏损1608 29万2023 5 819:58:27挖贝网春雨挖贝网5月8日,酒便利(838883)发公2023-05-08
金融界5月8日消息设计总院(行情603357,诊股)公告,截至目前,公司数字化转型升级处于阶段性建设,AI技术属2023-05-08
据央视新闻消息,总台记者从江西省应急管理厅了解到,5月5日至8日16时30分,本轮强降雨灾害过程已造成抚州2023-05-08
获得全球知名通讯设备商的AFU产品(5G基站天线滤波器一体化单元产品)新项目订单,订单金额7634 52万元2023-05-08
记者从国家消防救援局了解到,5月7日22时许,内蒙古呼伦贝尔市陈巴尔虎旗胡列也吐方向俄罗斯境内发生草原火2023-05-08
记者从近日在广东省佛山市举行的由国家知识产权局和世界知识产权组织共同主办,广东省知识产权局、佛山市知2023-05-08
儋州房子哪里适合养老,正恒帝景即能养老也能升值海南房价强硬上涨,正恒帝景房价会涨多少?正恒帝景房价趋2023-05-08
点击上方“码农突围”,马上关注这里是码农充电第一站,回复“666”,获取一份专属大礼包真爱,请设置“星2023-05-08
近年来,咖啡市场持续火热,咖啡文化不单是在欧美国家盛行,而且国内对咖啡产品的接受度日渐提高,许多企业2023-05-08
「友邦爱伴航」是友邦旗下特别出名的重疾险产品,将重疾险保障可谓是做到了极致。如果大家预算较为充足,又2023-05-08
南非计划对金融机构进行重大改革,商务处,金融机构,南非共和国2023-05-08
一、医疗纠纷医疗事故和医疗损害的联系和区别医疗纠纷医疗事故和医疗损害的联系:都有错误的医疗行为,都对2023-05-08
硬床垫睡不着有以下几个原因:年龄特点,舒适度和习惯。1、硬床垫对身体好也要区分年龄段,根据年龄特点来2023-05-08
消费者在选择车辆时,除了依据自身的喜好之外,当且也越来越关注车型的口碑,据车评网公布的“2023年4月全2023-05-08
博济医药(300404)05月08日在投资者关系平台上答复了投资者关心的问题。2023-05-08
预计5月份,全市道路运输安全生产将呈现出游踏青人群增多,交通运输任务活跃,旅游客运和包车客运运行率较2023-05-08
连续第十次加息美联储面临艰难抉择,加息,基点,美联储,货币政策,艰难抉择,通胀数据2023-05-08
据最高人民检察院网站消息,最高人民检察院决定自今年5月至12月组织全国检察机关积极参与粮食购销领域腐败2023-05-08
