0
我正在製作一個接受選項的腳本,其中兩個是-s
和-e
。 -s
需要一個開始日期和-e
要求和結束日期,但我想這樣做,所以一個人不能沒有另一個使用。換句話說,如果我使用-s
選項,-e
選項也是必需的,反之亦然。如何使選項需要其他選項?
這裏是我到目前爲止的代碼
#!/bin/bash
gflag=false
uflag=false
sflag=false
eflag=false
rflag=false
nflag=false
tflag=false
while getopts g:u:s:e:rnt opt; do
case "$opt" in
g)
gflag=true
groupParam=$OPTARG
echo "-g was triggered, Parameter: $OPTARG" >&2
;;
u)
uflag=true
userParam=$OPTARG
echo "-u was triggered, Parameter: $OPTARG" >&2
;;
s)
sflag=true
startParam=$OPTARG
echo "-s was triggered, Parameter: $OPTARG" >&2
;;
e)
eflag=true
endParam=$OPTARG
echo "-e was triggered, Parameter: $OPTARG" >&2
;;
r)
rflag=true
echo "-r was triggered" >&2
;;
n)
nflag=true
echo "-n was triggered" >&2
;;
t)
tflag=true
echo "-t was triggered" >&2
;;
esac
done
我怎樣才能改變我的代碼才能夠做到這一點?
謝謝你,非常完美。我想知道是否有一些內置的getopts方式來做到這一點,但這工作得很好。 – mackdiogo