Linux/Unix 命令列選項前的一橫(-)、兩橫(--)和沒橫
阿新 • • 發佈:2018-12-17
在使用 Linux/Unix 命令的時候,我們可能會對其五花八門的選項表示形式感到困惑,比如:
- ls -l
- ls --size
- ps aux 我們可以發現,這三個命令的選項都有不同的風格,有的是一個連字元(-),有的是兩個連字元(–),還有的沒有連字元。那麼他們都有什麼區別呢?
其實橫的個數是因為不同作業系統的風格所導致的:
- 選項前有一個連字元是 System V 的風格(T,Y) | UNIX98 風格(R,L)
- 選項前有兩個連字元是 GNU 的風格(T,L)
- 選項前沒有連字元是 BSD 的風格(T,Y,R) 說明:上面括號內字母含義 T:我老師 Y:引文 R:Red Hat L:Linux 就是這個範。括號內出現的字母表示贊成該說法的人。
對於 ls -l 和 ls --size 這兩種表示形式,在 Red Hat 這本書的 1.4.1.3 小節有提到他們的專有術語
- 上述 -l 這個命令列選項是單字母選項,這被稱為短命令列選項
- 與單字母選項不同的是,長命令列選項由片語成。長選項不是用一個連字元開頭,而是用兩個連字元(–)開頭。比如 --size。
對於 ps aux 這種表現形式,該章節也有相關描述:
有時,在使用多個命令列選項時,使用者可以用簡寫把所有的選項“串”到一個連字元上。
所有不帶引數的單字元選項可以串在一起,共用一個“-”。如果選項帶有引數,只有將它放在最後,它才能和其他選項共用一個連字元。這樣的話,可以在命令列上接著指定它的引數。
圖來自 Red Hat Linux 使用者基礎
9.1.1.3 ps命令的特徵
圖來自 Linux 就是這個範兒
4.5.5 命令列選項