问一句脚本

hengcuiyuan
远航 2011-07-05 字数 167

SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH;

这个是u-boot里的脚本,那个-x是啥意思,然后$$BASH又是什么意思,为什么在方括号里面要加双引号,而后面的却没有加呢?

Perl Perl的世界
7 个回复
apo
炒瓜子 2011-07-05

-x file

True if file exists and is executable.

$$ PID

方括号里加双引号,可以处理带空格的字符串。

才发现:这是perl脚本么???

【 在 hengcuiyuan (远航) 的大作中提到: 】

: 标  题: 问一句脚本

: 发信站: 水木社区 (Tue Jul  5 13:26:50 2011), 转信

: SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH;

: 这个是u-boot里的脚本,那个-x是啥意思,然后$$BASH又是什么意思,为什么在方括号里面要加双引号,而后面的却没有加呢?

: --

hengcuiyuan
远航 2011-07-05

sorry,这个不是perl脚本,是shell脚本

但是我没有找到讨论shell脚本的版面,于是就发到了这里,不好意思,呵呵

谢谢你的回复

【 在 apo (yun) 的大作中提到: 】

:  -x file

:               True if file exists and is executable.

: $$ PID

: ...................

hengcuiyuan
远航 2011-07-05

打错字了,是bash脚本

【 在 hengcuiyuan (远航) 的大作中提到: 】

: sorry,这个不是perl脚本,是shell脚本

: 但是我没有找到讨论shell脚本的版面,于是就发到了这里,不好意思,呵呵

: 谢谢你的回复

Invader
冬天太可恶了,月球泥奏凯。。 2011-07-05

这是Makefile, $$BASH 会先被make解释为 $BASH 然后被shell展开

【 在 hengcuiyuan (远航) 的大作中提到: 】

: 打错字了,是bash脚本

hengcuiyuan
远航 2011-07-05

看来越到内行啦

但是$BASH这个变量,我在u-boot怎么没有找到对应的定义呢?

类似的,还有个$(OBJ),也是没有找到定义呢

【 在 Invader (政治局局长 << May Dreaming~~) 的大作中提到: 】

: 这是Makefile, $$BASH 会先被make解释为 $BASH 然后被shell展开

tgfbeta
右旋肉碱 2011-07-05

大概是环境变量

【 在 hengcuiyuan (远航) 的大作中提到: 】

: 看来越到内行啦

: 但是$BASH这个变量,我在u-boot怎么没有找到对应的定义呢?

: 类似的,还有个$(OBJ),也是没有找到定义呢

: ...................

EOF
Keep It Simple 2011-07-05

$BASH 是只有 bash 会设定的含有当前 bash 路径的变量

$(OBJ) 是 makefile 的变量

我建议你先 man bash 再 info make

【 在 hengcuiyuan (远航) 的大作中提到: 】

: 看来越到内行啦

: 但是$BASH这个变量,我在u-boot怎么没有找到对应的定义呢?

: 类似的,还有个$(OBJ),也是没有找到定义呢

: ...................