2007年9月17日 星期一

Linux 指令 - 一般格式

通常執行命令時會在一個叫做 shell 的視窗中:
>ls -la /tmp
  • >:command prompt 命令提示字元,系統會以一個符號讓使用者知道,系統已準備好接受命令,通常以 $ 或 # 等表示方法,並可能包含其他資訊,如主機名稱,使用者身分等。
  • ls :command 一個有效的命令。(shell 的內建命令,存放在 PASH 所列目錄中的程式或程序稿,或是包含完整路徑的命令。)
  • -la :flags 旗標
  • /tmp :arguments 參數

注意:
  • Shell 是一種解釋命令意義的程式,Linux 中預設的 shell 是 GNU 參考 sh 所寫出的版本,稱為 bash (Bourne-Again Shell)。
  • Linux 的命令列是有大小寫之分的 (case-sensitive)。


Flags (旗標)的說明:
Shell 只要在命令列上遇到 - (dash)號,會自動判斷為旗標,不管 - 出現的位置,但事實 - 有兩種格式,如以下:
  1. Short Format: - ,一個字元,一個 Flag
  2. Long Format : -- ,一個單字
警告:
  • 通常短格式 - 後,不可能不會遇到如 ls -directory /tmp。因為一個字元,代表一個 Flag。
  • 由於有減號的關係,ls 認出 -l 是一個旗標而非檔名。然而並非所有命令都強調,旗標前都要有減號,最著名的例子為 tar 和 ps。
  • 以上說的是通則,可幫助學會命令的語法,但許多特殊命令不可一慨而論。

1 則留言:

z80asm 提到...

> 通常短格式 - 後,不可能遇到如 ls -directory /tmp。

錯!
這只是慣例而已,很多程式都沒有遵循這個慣例。
例如 imagemagick 全系列指令,都使用 -長單字。

另外也有很多 programmer 喜歡短 -
像 -help -version 之類的十分常見。