命令如何ls
知道它的标准输出是什么?
ls
根据目标标准输出的不同,操作似乎有所不同。例如,如果我这样做:
ls /home/matt/tmp
Run Code Online (Sandbox Code Playgroud)
结果是:
a.txt b.txt c.txt
Run Code Online (Sandbox Code Playgroud)
但是,如果我这样做
ls /home/matt/tmp | cat
Run Code Online (Sandbox Code Playgroud)
结果是(即每个结果换行):
a.txt
b.txt
c.txt
Run Code Online (Sandbox Code Playgroud)
该进程为标准输出传递了一个文件描述符 1 对吗?它如何确定如何格式化结果?文件描述符是否显示信息?