Chinaunix
标题:
字符串比较操作,怪怪怪!!
[打印本页]
作者:
nhw_cs
时间:
2006-04-13 10:52
标题:
字符串比较操作,怪怪怪!!
我看到shell编程的教程中关于字符串比较操作的操作符有 > , < ....
我在bash中测试:
# [ "abc" > "def" ]
# echo $?
# 0
再次测试
# [ "abc" < "def" ]
# echo $?
# 0
怎么都返回true? 到底是咋回事? 字符串不能进行大小比较吗? 如果能,如何进行比较? 为什么这种方法不行 ?
有经验的来说说
作者:
waker
时间:
2006-04-13 10:54
http://bbs.chinaunix.net/viewthr ... &extra=page%3D1
作者:
nhw_cs
时间:
2006-04-13 11:18
再次测试:
#[ "abc" \> "def" ]
[: >: binary operator expected
#[[ "abc" > "def" ]]
bash: [[: command not found
咋回事? 总该有个办法吧? 这种字符串比较大小的操作在实际中是需要的
作者:
waker
时间:
2006-04-13 11:31
不要用win32或sco平台,再试试
作者:
nhw_cs
时间:
2006-04-13 12:11
原帖由
waker
于 2006-4-13 11:31 发表
不要用win32或sco平台,再试试
我测试用的bash版本太低了,我换了其他机器的bash,两种方法都是可以的了.
我想问的是,是不是有些系统的bourn shell 用这两种方法也都不行? 如果是,这种设计就让人难以理解了,毕竟字符串大小比较是有实际需求的.
作者:
waker
时间:
2006-04-13 12:43
....bash也不能煮羊肉汤
如果版本低
可以借助expr/awk等等
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2