sh/bash/dash/ksh/zsh等Shell脚本
-
tosail2010
- 帖子: 83
- 注册时间: 2011-03-27 19:01
-
联系:
#1
帖子
由 tosail2010 » 2012-02-10 9:03
最近,看shell脚本,遇到这样一条指令
force 在这里表达什么意思?不解。
A year's plan starts with spring.
-
wjchen
- 帖子: 583
- 注册时间: 2011-05-02 19:08
- 系统: ubuntu 12.04
#2
帖子
由 wjchen » 2012-02-10 10:54
force是$0的参数,$0就是你正在看的这个shell脚本的名字。这个脚本的其他地方应该有写如果第一个参数是force应该做什么。
-
tusooa
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
-
联系:
#3
帖子
由 tusooa » 2012-02-12 18:57
tosail2010 写了:最近,看shell脚本,遇到这样一条指令
force 在这里表达什么意思?不解。
命令的参数。
-
tosail2010
- 帖子: 83
- 注册时间: 2011-03-27 19:01
-
联系:
#4
帖子
由 tosail2010 » 2012-02-14 15:31
wjchen 写了:force是$0的参数,$0就是你正在看的这个shell脚本的名字。这个脚本的其他地方应该有写如果第一个参数是force应该做什么。
eval是对参数进行求值,那这个值是多少呢?
A year's plan starts with spring.
-
wjchen
- 帖子: 583
- 注册时间: 2011-05-02 19:08
- 系统: ubuntu 12.04
#5
帖子
由 wjchen » 2012-02-14 18:53
eval是对参数进行求值,那这个值是多少呢?
对参数进行求值?不懂你的意思。
eval是将后面所有的参数组合起来看成一条命令(先进行一次shell变量替换),执行这条命令,返回这条命令的退出状态(成功或失败)。
比如你这个脚本名字叫script.sh,那么eval $0 force就相当于执行“script.sh force”这个命令。
-
tosail2010
- 帖子: 83
- 注册时间: 2011-03-27 19:01
-
联系:
#6
帖子
由 tosail2010 » 2012-02-15 9:34
“对参数进行求值”,这句话的确让人费解。 不过我是引用<Linux程序设计的>的原话。你解释的很透彻,谢谢!
这次引用shell对eval命令的描述:Execute arguments as a shell command.
A year's plan starts with spring.