分页: 1 / 1
请教一个if语句的问题
发表于 : 2009-09-03 12:05
由 fy20041127
从网上看到
if [ condition ] 判断语句中要在condition与中括号之间加入空格
那请问if [[....]]这种双括号的形式要如何使用呢?我自己了尝试了几种方式也没发现有什么太大的区别,请高手指教
Re: 请教一个if语句的问题
发表于 : 2009-09-03 21:27
由 cnkilior
if [[....]]是bash的扩展,if [ condition ] 是posix规则。
具体忘记了。
Re: 请教一个if语句的问题
发表于 : 2009-09-12 13:00
由 netstat
another choice
Re: 请教一个if语句的问题
发表于 : 2009-09-12 14:42
由 eexpress
代码: 全选
if ! [[ $1 =~ .mp3$ ]]; then exit 1; fi
if [[ $(tty) =~ /dev/tty.+ ]]; then
支持正则的啊,而且里面就不需要转义了。这很重要的。
Re: 请教一个if语句的问题
发表于 : 2009-09-12 16:33
由 c\nc
代码: 全选
a="-h"
[[ $a = -* ]] && echo 嘿嘿
嘿嘿
支持通配符了
Re: 请教一个if语句的问题
发表于 : 2009-10-05 14:54
由 tusooa
代码: 全选
05/10/2009 15:01:11
tusooa (~)
>> type [
[ is a shell builtin
05/10/2009 15:01:35
tusooa (~)
>> type [[
[[ is a shell keyword
05/10/2009 15:01:37
tusooa (~)
>> [ h
bash: [: missing `]'
05/10/2009 15:01:42
tusooa (~)
>> [[ h
bash: unexpected token `newline', conditional binary operator expected
bash: syntax error near `h'
05/10/2009 15:01:44
tusooa (~)
>> [[ --help = -* ]]
05/10/2009 15:01:51
tusooa (~)
>> echo $?
0
05/10/2009 15:01:57
tusooa (~)
>> [ --help = -* ]
05/10/2009 15:02:02
tusooa (~)
>> echo $?
1