Bash как напечатать следующий элемент аргумента командной строки - PullRequest
0 голосов
/ 10 января 2020

У меня есть один скрипт, который принимает командную строку 6 входных данных

TestScript. sh arg1 arg1out arg2 arg2out arg3 arg3out

, поэтому я использую для l oop проверку имени аргумента поскольку последовательность может измениться

, и я хочу, чтобы аргумент рядом с ней использовался в качестве значения

for i; do 
if [ "$i" == "arg1" ]
then

  if [ -z "$2" ] 
     then echo "Wrokspace cancatination is empty"
     else ws_concatination=$2
     echo $ws_concatination
     fi
elif [ "$i" == "arg3" ] 
then
  if [ -z "$2" ] 
     then echo "provide poddeffilepath "
     else poddef_path=$2
     echo $file
     fi
elif [ "$i" == "arg5" ] 
then
  if [ -z "$2" ] 
    then echo "provide productname "
    else product=$2
    echo $product
    fi

fi

done

, поэтому здесь вместо использования $ 2 я хочу принять следующее значение «i», что означает, что если "$i" == "arg1" затем ws_concatination will be arg1out``` означает, что i + 1-й элемент в java

возможно ли сделать это в bash, пожалуйста, помогите ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...