1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
liuliancao@liuliancao:~$ [ "a" > "a" ] && echo 'ab > a.'
ab > a.
liuliancao@liuliancao:~$ [[ "a" > "a" ]] && echo 'ab > a.'
liuliancao@liuliancao:~$ [[ "abc" > "aba" ]] && echo 'abc > aba.' || echo 'abc < aba'
abc > aba.
liuliancao@liuliancao:~$ [[ "abc" > "abd" ]] && echo 'abc > abd.' || echo 'abc < abd'
abc < abd
liuliancao@liuliancao:~$ [[ abc > aba ]] && echo 'abc > aba.' || echo 'abc < aba'
abc > aba.
liuliancao@liuliancao:~$ [ "a" < "ab" ] && echo 'a < ab.'
-bash: ab: No such file or directory
liuliancao@liuliancao:~$ [ "a" \< "ab" ] && echo 'a < ab.'
a < ab.
|
这里还需要注意,字符串在[]需要包起来且不是<>才会不报错,但是总是true,和结果预期不符, 而如果要满足预期,需要
加上转义\, 无论是小于还是大于,这里的原因其实是[]本质上是posix风格的命令,和curl那些命令一样,在则是一个bash扩展
有点像一个函数
而在双中括号里面,其实可以不包