带有选项的Shell脚本

时间:2012-12-06 10:20:48

标签: linux shell

我想编写一个脚本,在执行时应该看起来像 -

./script.sh -o1 option1 -o2 -o3 option3 ...

,输出应该是这样的 -

option1
option3

我怎样才能实现它?

3 个答案:

答案 0 :(得分:1)

如果您不需要开关(“ - o1”等),则有一个简单的解决方案。命令行选项出现在名为“$ 1”,“$ 2”等的变量中。例如

me@computer:~> ./script.sh option1 option2 option3
option1
option2
option3

script.sh:

#! /bin/sh
echo $1
echo $2
echo $3

答案 1 :(得分:0)

查看bash getopts内置版。例如(来自该链接教程)

while getopts ":a" opt; do
  case $opt in
    a)
      echo "-a was triggered!" >&2
      ;;
    \?)
      echo "Invalid option: -$OPTARG" >&2
      ;;
  esac
done

答案 2 :(得分:0)