Linux中引數命令有的是一個橫槓有的是兩個橫槓的區別
阿新 • • 發佈:2019-02-05
原文地址:https://segmentfault.com/q/1010000000757213/a-1020000000757344
Unix 程式的命令列選項有三種風格:Unix 風格、GNU 風格和 X toolkit 風格。
Unix 風格
即題主說的 -a
這種。在選項需要加引數的時候,緊跟在選項後面即可(或者加空格)。比如登入 mysql server 的時候:
$ mysql -u root -p
或者
$ mysql -uroot -p
均可。這時,root 就是 u 的引數,表示使用 root 使用者登入。另外加不加空格看程式怎麼才處理了,沒有明確的規定。
GNU 風格
即題主說的 --help
這種,使用兩個連字元加上關鍵詞(而不是單個字元)。這種風格的出現是因為有一些複雜的 GNU 程式,僅僅 26
個字母(或者算上大小寫 52 個)不夠使用而發展出來的。另外一個有點是容易理解,因為出現的不再是縮寫的字母。選項引數可以使用空格分割也可以使用"="來分割。如:
$ ls --human-readable --sort=time
如果使用 Unix 風格,那麼上條命令則是
$ ls -ht
是不是更加易讀呢?
X toolkit 風格
這是一種比較不常見的風格,使用單個連字元加上關鍵詞。只有 X 相關的程式才使用這種風格,一般不建議使用。
$ xeyes -display joesws:0 -geometry 1000x1000+0+0
看上去和 GNU 風格差不多,只是雙連字元改成了單個連字元。