溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中shell命令幫助格式的示例分析

發布時間:2021-07-01 09:32:25 來源:億速云 閱讀:177 作者:小新 欄目:開發技術

這篇文章主要介紹Linux中shell命令幫助格式的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

前言

linux shell命令通??梢酝ㄟ^-h--help來打印幫助說明,或者通過man命令來查看幫助,有時候我們也會給自己的程序寫簡單的幫助說明,其實幫助說明格式是有規律可循的

幫助示例

下面是git reset命令的幫助說明,通過man git-reset可以查看

git reset [-q] [<tree-ish>] [--] <paths>...
git reset (--patch | -p) [<tree-ish>] [--] [<paths>...]
git reset [--soft | --mixed | --hard | --merge | --keep] [-q] [<commit>]

對于命令和參數大致有如下幾種類型

  • 沒有任何修飾符參數 : 原生參數

  • <>  : 占位參數

  • []  : 可選組合

  • ()  : 必選組合

  • |   : 互斥參數

  • ... : 可重復指定前一個參數

  • --  : 標記后續參數類型

下面來一一介紹

參數類型解讀

原生參數

說明文檔里的字符即為命令需要使用的字符,比如以上命令的

git reset

這種參數在使用時必需指定,且和說明文檔里的一致

占位參數

表示方式: <>

和原生參數類似,都是必需指定的,只不過占位參數的實際字符是在使用時指定的,同時為了方便閱讀會用一個描述詞匯來表示,并以<>包圍,比如

<paths>

表示路徑,使用時可以指定為具體的路徑,而paths只是起一個說明作用,有些幫助說明里也會用大寫來表示占位參數,比如將以上參數說明寫成PATHS

可選組合

表示方式:  []

括號里的參數為可選參數,比如usage第二個里面的[-q] ,則-q為可選參數

可選項和占位參數也可以同時使用,如

[<commit>]

表示該參數可以指定某次提交,也可以不指定

必選組合

表示方式:  ()

括號里的參數必需指定,通常里面會是一些互斥參數,比如

(--patch | -p)

表示--patch-p這兩個參數必需指定一個

互斥參數

表示方式:  |

互斥參數一般都在()[]里,表示該參數只能指定其中一個,比如

[--mixed | --soft | --hard | --merge | --keep]

重復參數

表示方式: ...

表示前一個參數可以被指定多個,比如

<paths>...

<paths>是一個占位參數,使用時必需指定為路徑,...并表示可以指定多個路徑。重復參數的一個典型使用場景就是移動文件,將多個文件移動到一個目錄下,比如如下命令

git mv [<options>] <source>... <destination>

我們可以這樣使用

git mv -f a.cpp b.py dir

此時options對應為-f參數,source對應為a.cpp b.py,destination對應為dir

標記后續參數類型

表示方式: --

表示后續參數的某種類型,比如這里如果使用如下命令

git reset -p -- xx

對比第一個命令,這里的xx對應的應該是<paths>參數,當我們指定--之后,則git會認為xx就是一個路徑,那怕它是特殊符號或者路徑并不存在。這是shell命令的一個通用方式,比如我們有一個文件名為-h,如果想刪除這個文件,執行

rm -h

肯定是無法刪除的,因為這時-h會被認為是rm的一個參數選項,應該使用

rm -- -h

這時shell會將-h解釋為一個文件名傳遞給rm命令

解讀實戰

最后來解釋一個比較復雜的幫助說明

git cat-file (-t [--allow-unknown-type]|-s [--allow-unknown-type]|-e|-p|<type>|--textconv) <object>

該命令參數由四個部分,其中gitcat-file為原生參數,()里的為可選組合, <object>為占位參數

組合又由6部分組成,為互斥關系

-t [--allow-unknown-type]
-s [--allow-unknown-type]
-e
-p
<type>
--textconv

因此該命令的幫助說明可以拆分如下

git cat-file -t <object>
git cat-file -t --allow-unknown-type <object>
git cat-file -s <object>
git cat-file -s --allow-unknown-type <object>
git cat-file -e <object>
git cat-file -p <object>
git cat-file <type> <object>
git cat-file --textconv <object>

以上是“Linux中shell命令幫助格式的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女