我有一部分 bash 脚本假设要验证参数,如果匹配则继续或退出。
这是我的脚本
TEMP=`getopt --options b,t:,h,n,v,z: --longoptions batch,targetdir:,help,notar,verbose,zone: --name 'mysql-backup-start' -- "$@"`
if [ $? -ne 0 ]; then
echo "Command Incoorect"
exit 1
fi
mysql-backup-start应采用以下参数:-b, -t, -h, -n, -v, -z --targetdir, --help, --notar, --verbose, 和--zone. 但是,如果我传递, 或它之类的参数-nn,它会起作用并且它不应该起作用。 -hh--tar
更准确地说,我想要的是,如果我执行 'mysql-backup-start'应该可以工作,'mysql-backup -start --notar'应该可以工作, 'mysql-backup-start --n'不应该工作, 'mysql -backup-start --targetdir=/home/backup/mysql' 应该可以工作,'mysql-backup-start --targetsdir=/home/backup/mysql'不应该工作,'--mysql-backup-start --ta =/home/backup/mysql' 不应该工作。