Kru*_*mar 6 shell pipe io-redirection
我正在执行命令
ls > a.txt | sort > b.txt
此命令正在执行以下操作:
执行 ls
排序
创建a.txt
和存储排序的输出到a.txt
创建b.txt
,但它是空的。
谁能解释一下?
我正在实现我自己的外壳,我需要了解这种行为并模拟它。
Eri*_*ouf 15
在|
将左边的命令的输出,并把它交给右边的命令的输入。该>
运营商将采取命令的输出,并把它放到一个文件中。这意味着,在您的示例中,当它到达时,|
已经没有输出了;这一切都进入了a.txt
。所以sort
右边的对空字符串进行操作并将其保存到b.txt
您可能想要的是使用tee
既可以写入文件又可以写入标准输出的命令
ls | tee a.txt | sort > b.txt
Run Code Online (Sandbox Code Playgroud)
虽然我真的很好奇你想要做什么,因为ls
也可以/会为你整理东西。
归档时间: |
|
查看次数: |
2330 次 |
最近记录: |