+ -
当前位置:首页 → 问答吧 → shell中有类似argc和argv的变量吗?

shell中有类似argc和argv的变量吗?

时间:2011-07-11

来源:互联网

大概浏览了一下置顶帖十三问,知道$@和$*的意思。
但我想一次获取到每一个参数怎么办呢,类似于c语言的argv0 argv1 argv2没有吗?
还是将$@中的再按照$0 $1 $2 $3获取一遍?

例如脚本如下,名字为test:
#!/bin/sh
echo "I want to get every input parameter similar to argv"
echo "$@"
echo "$*"

如果输入test argv0 argv1 argv2 argv3,怎么分别获得这4个参数呢?

作者: icetown   发布时间: 2011-07-11

回复 icetown


仔细看一遍十三问

作者: ly5066113   发布时间: 2011-07-11

回复 icetown
  1. cat s.sh
  2. #!/bin/bash
  3. echo "$@"
  4. echo $1 $2 $3

  5. sh s.sh argv0 argv1 argv2
  6. argv0 argv1 argv2
  7. argv0 argv1 argv2
复制代码

作者: yinyuemi   发布时间: 2011-07-11

本帖最后由 rdcwayx 于 2011-07-11 13:57 编辑

通常情况下,可以用 $1, $2, $3 等来调用。
也可以用shift 来提升。
  1. man shift
复制代码

作者: rdcwayx   发布时间: 2011-07-11