我對使用Linux命令行程序和命令時應該使用的術語有些困惑。Linux命令行/ shell術語
如果我是執行命令,例如:
mkdir testing_dir
會「testing_dir」被稱爲「操作」到程序的mkdir,或「參數」或「參數」?
我的另一個問題是,你會用什麼術語來描述下面的過程?
find *.txt | grep a | grep b
我可以說; 「find」程序的輸出是通過管道(重定向)到grep程序的輸入?
我對使用Linux命令行程序和命令時應該使用的術語有些困惑。Linux命令行/ shell術語
如果我是執行命令,例如:
mkdir testing_dir
會「testing_dir」被稱爲「操作」到程序的mkdir,或「參數」或「參數」?
我的另一個問題是,你會用什麼術語來描述下面的過程?
find *.txt | grep a | grep b
我可以說; 「find」程序的輸出是通過管道(重定向)到grep程序的輸入?
對於第一個問題,它是一個「論點」。這就是爲什麼在C程序中,主要原型是int main(int argc, char** argv)
。 argc
表示參數計數,而argv
表示參數向量。
對於第二個,它是「管道」。 (因爲它是通過管道|
字符來完成的,和/或數據是從一個程序傳遞的,就像它正在通過一個管道一樣。)通常,stdout
僅在被髮送到具有>
的文件時才被稱爲「重定向」運營商。
參數或參數,而不是操作數,而MKDIR是一個命令,而不是一個算子
是,則輸出通過管道輸送到下一個命令的輸入參數。
命令沒有操作數,操作符有操作數。對於命令,它們是參數。由於mkdir是一個命令,所以這個名字肯定是一個參數。
而關於第二個。第一個輸出作爲輸入被賦予第二個命令。重定向通常用於運算符>,>>和2> 2 >>
嚴格地說,參數是分配給參數的值。 – chepner 2012-07-20 20:39:27