Chinaunix
标题:
问一个if语法
[打印本页]
作者:
csdemo
时间:
2015-05-29 17:02
标题:
问一个if语法
if head=`git rev-parse --verify --short HEAD 2>/dev/null`; then
if head= 是啥语法呢?
作者:
骑着蜗牛定乾坤
时间:
2015-05-29 17:09
本帖最后由 骑着蜗牛定乾坤 于 2015-05-29 17:14 编辑
if [判断条件];then
[command]
fi
上面的是if判断语句的写法,而head是变量,head=`git rev-parse --verify --short HEAD 2>/dev/null`作为判断条件,要放在[]里,像这样
[ head=`git rev-parse --verify --short HEAD 2>/dev/null` ] ,[]前后要有空格
回复
1#
csdemo
作者:
csdemo
时间:
2015-05-29 17:13
回复
2#
骑着蜗牛定乾坤
那head= 啥时候是真啥时候是假呢?
作者:
骑着蜗牛定乾坤
时间:
2015-05-29 17:17
如果git rev-parse --verify --short HEAD顺利执行,也就是说$?=0为真,否则为假
回复
3#
csdemo
作者:
csdemo
时间:
2015-05-29 17:20
回复
4#
骑着蜗牛定乾坤
head=0 或者head=1我试过都是符合条件的
并且· ·的执行是把内容赋值给head 比如head=·ls· head的值是当前目录下的文件列表
作者:
liaosnet
时间:
2015-05-29 17:21
回复
5#
csdemo
= 很多时候是赋值 head=1 head=0 都是赋值。。都是成功的。。
作者:
csdemo
时间:
2015-05-29 17:27
回复
6#
liaosnet
我也比较偏向这个理解,不过什么时候赋值会失败呢,这样写有意义?
作者:
liaosnet
时间:
2015-05-29 17:36
回复
7#
csdemo
我也不知道啊,什么时候赋值会失败~
作者:
ly5066113
时间:
2015-05-29 17:38
回复
7#
csdemo
和这样是一个意思,git命令执行失败的时候,就会失败
if git rev-parse --verify --short HEAD >/dev/null 2>&1
then
head=`git rev-parse --verify --short HEAD 2>/dev/null`
fi
复制代码
作者:
ly5066113
时间:
2015-05-29 17:41
回复
8#
liaosnet
if 判断的是 git 命令的返回值
head 只是获取 git 命令的标准输出
作者:
csdemo
时间:
2015-05-29 17:57
回复
10#
ly5066113
果真如此,多谢
作者:
骑着蜗牛定乾坤
时间:
2015-05-31 13:39
同意10楼的说法
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2