【问题标题】:Linux command line / shell terminologyLinux 命令行/shell 术语
【发布时间】:2012-04-02 05:04:50
【问题描述】:
我对在提及 Linux 命令行程序和命令时应该使用的术语感到有些困惑。
如果我要执行如下命令:
mkdir testing_dir
“testing_dir”会被称为程序 mkdir 的“操作数”,还是“参数”或“参数”?
我的另一个问题是,您会用什么术语来描述以下过程?
find *.txt | grep a | grep b
我能说吗? “查找”程序的输出通过管道(重定向)到 grep 程序的输入?
【问题讨论】:
标签:
linux
shell
command
terminology
【解决方案1】:
对于第一个问题,它是一个“论据”。这就是为什么在 C 程序中,主要原型是int main(int argc, char** argv)。 argc 表示参数计数,argv 表示参数向量。
对于第二个,它是“管道”的。 (因为它是使用管道 | 字符完成的,和/或数据是从一个程序传递的,就像它通过管道一样。)通常,stdout 仅在发送到使用 > 运算符的文件。
【解决方案2】:
- 大多数人会称之为论点。
- 是的,它是通过管道传输的。
【解决方案4】:
命令没有操作数,操作符有操作数。对于命令,它们是参数。由于 mkdir 是一个命令,所以名称肯定是一个参数。
关于第二个.. 第一个输出作为输入提供给第二个命令。重定向通常与运算符 > 、 >> 和 2> 2>>
一起使用