为什么catfile 会覆盖文件,而cat<>file不会覆盖文件?
这个帖子: http://bbs.chinaunix.net/forum.p ... p;page=7#pid1636825
里面说,>操作符的优先级高于<操作符,所以
cat < m.txt > m.txt
意味着首先执行管道重定向标准输出>m.txt,也就是清空了m.txt,然后cat命令再次读取<m.txt,所以是空的。
但是如果我执行cat <>m.txt的话,m.txt的内容保持不变。这是为什么呢,和上面那个命令的根本区别在于什么地方呢?