2
./foo.sh -v -r /home/ -s /home/user/file
./foo.sh -r /home/ -s /home/user/file
在參數我總是需要一個文件或掃描一個文件夾,該數據庫中的文件(-s數據庫文件)
內部foo.sh
function entrance()
{
while getopts "v:r:s" opt; do
case $opt in
v)
echo "-v was triggered, Verbose mode" >&2
;;
r)
echo "-r was triggered, recursive mode: $OPTARG" >&2
;;
s)
echo "-s was triggered, DATABASE: $OPTARG" >&2
;;
\?)
echo "Invalid option: -$OPTARG" >&2
exit 1
;;
:)
echo "Option -$OPTARG requires an argument." >&2
exit 1
;;
esac
done
}
我不知道爲什麼它不起作用。
請修復我。
謝謝
鑑於你的例子,你的選項字符串應該是'getopts的 「:VR:S:」' - 用你所擁有的,'-v'和' -r'需要參數,'-s'不需要。 –
它以什麼方式不「工作」?是否有錯誤訊息? –