shell “ls”是什么意思|./a.out”do?[重复]

2fjabf4q  于 2023-03-24  发布在  Shell
关注(0)|答案(1)|浏览(137)

此问题在此处已有答案

What does a | (pipe character) do in a shell (bash) command?(1个答案)
昨天关门了。
我不知道这个命令是什么意思:ls | ./a.out
什么是“|“符号,以及当文件而不是目录用作参数时ls做什么?

q1qsirdb

q1qsirdb1#

命令ls | ./a.out运行ls命令以列出当前目录中的文件和目录,并将输出通过管道传输到./a.out命令。
该|(管道)符号用于将一个命令的输出重定向到另一个命令作为输入。在本例中,ls命令的输出被重定向为./a.out命令的输入。
./a.out可以是一个文件或命令,可能是一个编译的C或C++程序,它从标准输入(stdin)获取输入。通过将ls命令的输出通过管道传输到./a.out命令,ls命令的输出就变成了./a.out命令的输入。
./a.out命令的确切行为取决于它所引用的特定程序,因为编译程序的行为由其代码决定。但是,通常情况下,程序可能会以某种方式处理输入数据并在标准输出(stdout)或其他输出流上产生输出。

相关问题