【问题标题】:How does a Bash for loop read script parameters? [duplicate]Bash for 循环如何读取脚本参数? [复制]
【发布时间】:2018-12-29 14:18:57
【问题描述】:

通常,脚本参数从$1$2、...
中读取 有时这与shiftwhile-loop 和case-statement 结合使用来处理多个参数。

while [[ $# > 0 ]]; do
  case "$1" in
    -v|--verbose)
      VERBOSE=1
      ;;
    -d|--debug)
      VERBOSE=1
      DEBUG=1
      ;;
    *)      # unknown option
      echo 1>&2 -e "${COLORED_ERROR} Unknown command line option '$key'.${ANSI_NOCOLOR}"
      exit 1
      ;;
  esac
  shift # parsed argument or value
done

今天找到了一个基于简单for-loop的代码sn-p:

#! /bin/bash
for opt; do
  echo $opt
done

执行:

$ ./test.sh foo bar spam
foo
bar
spam

通常,人们会看到for i in ...; do
为什么/如何简化的 for 循环访问脚本参数?

它是否也适用于函数中的参数?

【问题讨论】:

    标签: bash for-loop parameter-passing


    【解决方案1】:

    来自help for

    如果in WORDS ...; 不存在,则假定in "$@"

    【讨论】:

      猜你喜欢
      • 2013-08-24
      • 2013-10-04
      • 1970-01-01
      • 2012-03-22
      • 2011-06-13
      • 2018-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多