繁体   English   中英

如何将值列表传递给脚本中的shell参数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM