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: coonxu@126.com
*這是乙個使用
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...