你好這裏所有新手:d慶典 - 命令行參數腳本
我是在一個項目工作,現在涉及的是處理一個* .dat的文件。該腳本的腳本下用戶
inputed特定命令運行我的問題是,我無法弄清楚如何「搶」,從命令的參數「進口」他們的腳本
這裏有來自特定命令的一些例子:
./tool.sh -f <file>
./tool.sh -f <file> -id <id>
./tool.sh --born-since <dateA> --born-until <dateB> -f <file>
其中tool.sh是腳本的名稱,<file>
是*.dat
文件,<date>
就是這種格式YYYY-MM-DD的日期
所以你可以看到有短字和長字。我知道getopts命令很難處理長整數。我如何使用「單個」代碼處理所有這些問題?
編輯:我需要使用的參數和條件表達式使用「如果」
因此可能我只是做一個案例:
#!/bin/bash
getopts f a
if [ $1 == "something" && $2 == "something2" && $a == "f" ]; then
....
elif [ $1 == "something3" && $2 == "something4" && $a == "f" ]
....
else
....
fi
那會是正確的嗎?
參數是'$ 1','$ 2','$ 3'等 – Barmar
[BashFAQ#35](HTTP: //mywiki.wooledge.org/BashFAQ/035)是你的朋友。 –