Linux下獲取命令列引數 Getopt

2021-04-02 17:56:06 字數 1492 閱讀 8981

linux下獲取命令列引數——getopt

linux下獲取命令列引數——

getopt

getopt

在unix

下的命令列程式特別好用,特別是在你有許多引數要加入時。一般來說,你可以透過「

man 3 getopt

」來獲得其說明。這個函式很好用,也很簡單,但網上關於這個函式的中文介紹實在是少之又少,這篇文章就簡單講述一下如何利用

getopt

函式來獲取引數,希望能給那些被引數讀取弄得有一點點煩躁的朋友有一點點幫助。

n表頭檔案:

#i nclude

n函式宣告:

int getopt(int argc, char * const argv, const char *optstring);

n函式說明:

getopt()

用來分析命令列引數。引數

argc

和argv

是由main()

傳遞的引數個數和內容。引數

optstring

則代表欲處理的選項字串。此函式會返回在

argv

中下乙個的選項字母,此字母會對應引數

optstring

中的字母。如果選項字串裡的字母後接著冒號

「:」,則表示還有相關的引數,全域變數

optarg

即會指向此額外引數。如果

getopt()

找不到符合的引數則會印出錯資訊,並將全域變數

optopt

設為「?」

字元,如果不希望

getopt()

印出錯資訊,則只要將全域變數

opterr設為0

即可。 n

返回值:如果找到符合的引數則返回此引數字母,如果引數不包含在引數

optstring

的選項字母則返回

「?」字元,分析結束則返回-1。

下面是乙個使用

getopt

函式讀取引數的例子程式,該程式支援

–p –s –b –c

的引數,並將這些引數值讀取後進行列印。你可以根據需要將這些**稍作修改用於自己的程式中。 /*

*  getopt.c

*  author: coonxu

*  email:  [email protected]

*這是乙個使用

getopt

函式讀取引數的例子程式,該程式支援

-p -s -b -c

的引數,

* 並將這些引數值讀取後進行列印。你可以根據需要將這些**稍作修改用於自己的程式中。*/

#i nclude

#i nclude

int main(int argc, char **argv) }

return 0;

}

獲取命令列引數

在win32控制台應用程式中,主函式為 int main intargc,char argv 其中argc為引數個數,我們可以如此呼叫 for i 0 i 在win32應用程式中呢?主函式為 int winapi winmain hinstancehinstance,hinstancehprevin...

python getopt 獲取命令列引數

python 中 getopt 模組,該模組是專門用來處理命令列引數的函式 getopt args,shortopts,longopts args一般是sys.argv 1 shortopts 短格式 longopts 長格式 命令列中輸入 python test.py i 127.0.0.1 p ...

php命令列獲取引數

php命令列獲取引數 原來程式使用list.php?n 1來實現乙個功能,現在需要讓其自動執行。在命令列下,cd www hx usr local bin php www hx list.php 但list.php要如何獲取引數呢?通過瀏覽文件,php 的命令列模式 知道了在使用命令行時,會產生 a...