Bash 脚本和定义变量

Bash 脚本和定义变量

当我启动我的bash脚本时:

$ ./mybashscript.sh

如果我希望能够在执行上述命令时为变量附加值,我该如何在其中定义变量?例如,如果我使用 .sh 文件记录条目,我该如何在其中声明变量 day、month 和 year?

$ ./EventDateLog.sh -day=17 -month=2 year=2019

答案1

如果您对短名称变量没有异议,我认为最简单的方法是使用getopts如下方法:

#!/bin/bash

while getopts :d:m:y: FLAG; do case $FLAG in

    d) # set day
      DAY=$OPTARG
      ;;

    m) # set month
      MONTH=$OPTARG
      ;;

    y) # set year
      YEAR=$OPTARG
      ;;

    \?) # unrecognized option - show help
    echo "your help message here"
    exit 0
      ;;   

 esac
done


# the rest of your program here handling your variables
echo "$DAY" "$MONTH "$YEAR"

例子

$ ./EventDateLog.sh -d 17 -m 2 -y 2019
17 2 2019

相关内容