只是好奇,这是ls的正常预期行为:
user@host:~$ls Codes Documents Music Pictures Templates Desktop Downloads Papers Public Videos
但是当我使用带管道/重定向的ls时,它的行为类似于ls -1:
user@host:~$ls | cat Codes Desktop Documents Downloads Music Papers Pictures Public Templates Videos
为什么? (以及如何编写这样的程序,在这样的stdout和管道之间提供差异输出?)
附:我还设置别名l =’ls -F’,这次管道/重定向不再是ls -1样式:
user@host:~$l | cat Codes/ Documents/ Music/ Pictures/ Templates/ Desktop/ Downloads/ Papers/ Public/ Videos/
不使用别名,它以ls -1样式执行命令,但是:
$ls -F | cat Codes/ Desktop/ Documents/ Downloads/ Music/ Papers/ Pictures/ Public/ Templates/ Videos/