最近在学习shell 在看数据重定向的时候写了如下的命令:
cat /etc/passwd > t1
sort -t ':' -k 3 -n -r t1 > t1
发现t1中的数据并没有按照规则被排序而是被清空了,查询资料知道是重定向符“>”对存在的t1会先清空,那么sort就无意义了。
但问题也在这里,难道在这一行中“>”拥有较高“优先级”先对t1做了判定然后将其清空? 不知到这里怎么理解才是,请各位大神指教。谢谢!
同一行中命令与重定向符会不会有优先级的问题?
-
- 帖子: 11
- 注册时间: 2009-09-12 16:53
- YeLee
- 论坛版主
- 帖子: 26406
- 注册时间: 2008-08-13 8:48
- 系统: Fundu i64
- 来自: 东海硇州,一双管钥。
- 联系:
Re: 同一行中命令与重定向符会不会有优先级的问题?
这个不解释,你加个tee在后面不就行了吗?谁叫你把输出源和输入源都设定为同一个文件的?




◎当我站在道德的高度上俯视别人的时候,发现自己是多么渺小。
♥执着但不偏激,反对而不排斥,坚决捍卫矛盾体的存在方式。
★★★天气预报★★★
fcitx-yatable一个可以使用的码表输入法
[教程]几个实例攻克软件编译难关
Gentoo Development Guide
字体相关
♥执着但不偏激,反对而不排斥,坚决捍卫矛盾体的存在方式。
★★★天气预报★★★
fcitx-yatable一个可以使用的码表输入法
[教程]几个实例攻克软件编译难关
Gentoo Development Guide
字体相关
-
- 帖子: 53
- 注册时间: 2010-12-09 23:54
Re: 同一行中命令与重定向符会不会有优先级的问题?
为什么不用管道符?
代码: 全选
cat /etc/passwd|sort -t ':' -k 3 -n -r > t1
- yaoms
- 帖子: 4952
- 注册时间: 2007-10-19 14:51
- 来自: 深圳
Re: 同一行中命令与重定向符会不会有优先级的问题?
就是,管道好,一条搞定,简洁优雅~zhangxiaofir 写了:为什么不用管道符?代码: 全选
cat /etc/passwd|sort -t ':' -k 3 -n -r > t1

Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'
alias 爱慕颇雷尔='mplayer'
-
- 帖子: 11
- 注册时间: 2009-09-12 16:53
Re: 同一行中命令与重定向符会不会有优先级的问题?
zhangxiaofir, 谢谢 学习了
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系: