Chinaunix
标题:
shell 获取参数-----简单问题不简单。求解
[打印本页]
作者:
sagasword
时间:
2010-11-12 11:15
标题:
shell 获取参数-----简单问题不简单。求解
写了bash shell一个脚本如 get.sh -a aaa -b bbb -c ccc dddd
脚本里面如何才能获取dddd的内容 ,使用这个脚本的不一定会把dddd放在最后一个参数
如 get.sh -a aaa dddd -b bbb -c ccc
get.sh dddd -a aaa -b bbb -c ccc
其实就是类似很多命令都可以这样:grep,什么的
shell脚本新手
作者:
dibug
时间:
2010-11-12 12:09
不懂。帮顶
作者:
nuclearxin
时间:
2010-11-12 12:27
关于 getopt 处理参数的问题 难道你就没看到。。。。。这个帖子
看完了就解决了
作者:
L_kernel
时间:
2010-11-12 15:37
http://bbs.chinaunix.net/viewthread.php?tid=919781
http://bbs.chinaunix.net/viewthread.php?tid=967883
也许这两个链接可以帮到你的。
作者:
ganlan
时间:
2010-11-12 15:44
转自ABS
Example 9-6 arglist:通过$*和$@列出所有的参数
################################Start Script#######################################
1 #!/bin/bash
2 # arglist.sh
3 # 多使用几个参数来调用这个脚本,比如"one tow three".
4
5 E_BADARGS=65
6
7 if [ ! -n "$1" ]
8 then
9 echo "Usage: `basename $0` argument1 argument2 etc."
10 exit $E_BADARGS
11 fi
12
13 echo
14
15 index=1 # 初始化数量.
16
17 echo "Listing args with \"\$*\":"
18 for arg in "$*" # 如果"$*"不被""引用,那么将不能正常地工作
19 do
20 echo "Arg #$index = $arg"
21 let "index+=1"
22 done # $* sees all arguments as single word.
22 done # $* 认为所有的参数为一个单词
23 echo "Entire arg list seen as single word."
24
25 echo
26
27 index=1 # 重置数量.
28 # 如果你忘了这句会发生什么?
29
30 echo "Listing args with \"\$@\":"
31 for arg in "$@"
32 do
33 echo "Arg #$index = $arg"
34 let "index+=1"
35 done # $@ 认为每个参数都一个单独的单词.
36 echo "Arg list seen as separate words."
37
38 echo
39
40 index=1 # 重置数量.
41
42 echo "Listing args with \$* (unquoted):"
43 for arg in $*
44 do
45 echo "Arg #$index = $arg"
46 let "index+=1"
47 done # 未""引用的$*把参数作为独立的单词.
48 echo "Arg list seen as separate words."
49
50 exit 0
################################End Script#########################################
作者:
dgww
时间:
2010-11-12 17:22
既然你需要读取文件dddd,那么为脚本多加上一个-f选项,用于读取文件不就可以了吗?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2