Linux命令行/ shell术语

时间:2012-04-02 05:04:51

标签: linux shell command terminology

我对引用Linux命令行程序和命令时应该使用的术语感到有些困惑。

如果我要执行如下命令:

mkdir testing_dir

“testing_dir”会被称为程序mkdir的'操作数',还是'参数'或'参数'?

我的另一个问题是,您将用什么术语来描述以下过程?

find *.txt | grep a | grep b

我可以说; “查找”程序的输出是否通过管道传输(重定向)到grep程序的输入?

4 个答案:

答案 0 :(得分:3)

对于第一个问题,它是一个"参数"。这就是为什么在C程序中,主要原型是int main(int argc, char** argv)argc表示参数计数,argv表示参数向量。

对于第二个,它是"管道"。 (因为它是使用管道| charactor完成的,和/或数据是从一个程序传递的,就像它通过管道一样。)通常,stdout仅被称为"重定向& #34;当它被发送到>运算符的文件时。

答案 1 :(得分:2)

  1. 大多数人都会称之为论据。
  2. 是的,它是用管道输送的。

答案 2 :(得分:1)

  • 参数或参数而不是操作数,而mkdir是一个命令,而不是一个操作符

  • 是的,输出通过管道输出到下一个命令的输入参数。

答案 3 :(得分:1)

命令没有操作数,操作符有操作数。对于命令,它们是参数。由于mkdir是一个命令,因此名称肯定是一个参数。

关于第二个..第一个输出作为输入提供给第二个命令。重定向通常与运营商一起使用> ,>>和2> 2 - ;>