Bir bash betiğine iletilen parametrelerin bir dizgeyle eşleşip eşleşmediğini kontrol etmek istediğim bir komut dosyası yazmaya çalışıyorum. Şu an onu kurma yöntemim
if [ "$3" != "-disCopperBld" -a "$4" != "-disCopperBld" -a "$5" != "-disCopperBld" -a "$6" != "-disCopperBld"]
ama çok sayıda parametre olabilir, bu yüzden bunu yapmanın daha iyi bir yolu olup olmadığını merak ediyordum?
Teşekkürler
EDIT: Bu kod yığınını denedim ve betiği -disableVenusBld seçeneğiyle çağırdım, ancak yine de "Build build" komutunu yazdırıyor. Yanlış bir şey mi yapıyorum? Şimdiden teşekkürler!
while [ $# -ne 0 ]
do
arg="$1"
case "$arg" in
-disableVenusBld)
disableVenusBld=true
;;
-disableCopperBld)
disableCopperBld=true
;;
-disableTest)
disableTest=true
;;
-disableUpdate)
disableUpdate=true
;;
*)
nothing="true"
;;
esac
shift
done
if [ "$disableVenusBld" != true ]; then
echo "Starting build"
fi
#! /bin/sh -
üstüne ekledim , betiği çalıştırılabilir hale getirdim, sonra ./t.sh
"Başlatılıyor" yazıyor ancak ./t.sh -disableVenusBld
hiçbir şey yazdırmıyor.