[英]how to pass list of values to shell argument in script
脚本应将值列表传递给参数,并应验证是否传递了一个参数且没有列表。 例如./script --arg hi脚本应执行--arg命令并添加/删除hi
./script --arg“嗨,你好吗”在这种情况下,如果用户向arg1输入以上值,则没有参数传递给arg如何给出异常或错误。
function test() {
filename=$1
echo $filename
case "$2" in
a)
echo $3 >> $filename
echo "add "
# cat $filename
shift
shift
;;
exit
}
test $fileName $3 $4
如果您想检查传递的参数数量,则argsCount可以解决问题。 在下面的示例中,我传递了3个参数,并验证参数计数是否等于3,如果不等于3,它将从脚本中退出。
#!/usr/bin/env bash
set -ex
set -o pipefail
copyConfigFrom=$1
hostConfigFileName=$2
hostnameEmail=$3
argsCount="$#"
if [ "$argsCount" -ne 3 ]; then
echo "Usage: $0 copyConfigFrom hostConfigFileName hostnameEmail"
exit 1
fi
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.