getopt

    1熱度

    2回答

    我已經編寫了一個用於在Android上配置SSH daemom等的長bash腳本。問題是,有時候其他用戶的時間太長了,或者我可能只想配置腳本必須提供的某些方面。每次運行腳本時,我都需要添加一些選項來指定將要運行的內容,但仍然可以在不指定任何內容的情況下運行腳本。 喜歡的東西: myscript -d -o -p 或者 myscript -dop 該腳本可以發現here。我認爲它太長了,無

    6熱度

    1回答

    使用getopt分析命令行參數時,可以在選項標記和所需參數的參數之間插入一個空格,但不能插入可選參數。可選參數只有在選項後面纔會被解析。 TEMP=`getopt -o p:q:: -n 'mkqueue.sh' -- "[email protected]"` if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi # N

    7熱度

    2回答

    是否有可能使用GNU getopt忽略未知的可選參數? 我有一個腳本scriptA.sh,它有可選參數--optA, --optB, --optC, --optD。 我想寫一個包裝wrapperA,它有兩個可選參數--optX and --optY,它調用scriptA。但是,我不想在包裝器中聲明scriptA的所有可選參數。 特別是,如果裏面wrapperA,我 getopt --longopt

    0熱度

    2回答

    用戶應該能夠調用的Python腳本是這樣的: python myScript.py -i inputFile.txt -k string1 -k string2 -k string3 -o outputFile.txt 或像這樣: python myScript.py -i inputFile.txt -o outputFile.txt -k string1 -k string2 劇本里面

    0熱度

    2回答

    我想讓getopt與我的C程序一起工作,但是我發現它不工作。 這裏是行不通 char* getFlagArg(int argc, char **argv, char flag) { extern char *optarg; extern int optind, optopt, opterr; char opt; char options[3] = {flag,':',0}; while(

    -1熱度

    1回答

    我修改這裏給出的示例代碼: sample code for getopt 如下,但它不工作。我不知道我錯過了什麼。我爲這個現有的代碼添加了一個「-j」選項。最終,我想添加儘可能多的命令選項以滿足我的需求。 當我輸入如下,它不會打印任何東西。 ./pyopts.py -i dfdf -j qwqwqw -o ddfdf Input file is " J file is " Output fi

    0熱度

    1回答

    參數事宜 我的應用程序解析命令行參數: import sys import getopt arguments = sys.argv[1:] options, remainder = getopt.getopt(arguments, "aa:bb:cc:dd:h", ["aaaa=", "bbbb=", "cccc=", "dddd=", "help"]) print dict(opti

    0熱度

    2回答

    我有一個關於getopt函數的問題,如下面的代碼所示,「ch」的類型是「int」,但在switch子句中,它被視爲「char」 ..我很困惑,爲什麼? Thansk !! int main(int argc, char **argv) { extern int optind; extern char * optarg; int ch; char * format = "f:hnBm:";

    0熱度

    1回答

    我不確定發生了什麼問題,也沒有從官方文檔中獲得很多幫助。 但是,這是發生了什麼事。 我有選項 '一個', 'C:' 和 'M:' 從使用getOpt() 它們佈置爲命令行改爲: if ($op = getopt("a")) { doAll(); } elseif ($op = getopt("c:")) { doSome($op["c"]); } elseif ($

    0熱度

    1回答

    嘗試解析命令行參數,然後將其打印出來......我怎樣才能使用getopt來做到這一點? 我需要getopt作爲後續開發代碼的基礎。 #include <ctype.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main (int argc, char **argv) { char *cva