LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 762|回复: 4

字符串比较大小

[复制链接]
发表于 2004-9-9 18:26:39 | 显示全部楼层 |阅读模式
set a = 50%
set b = 60%
能比较a ,b 的大小么?

或者可以用其他方法比较2个百分数之间的大小么/
发表于 2004-9-9 22:35:39 | 显示全部楼层
bash/ksh:

  1. [[ ${a%%%* -gt ${b%%%*} ]]&&echo $a is big||echo $b is big
复制代码

楼主用的是csh吧~,,呵呵,不熟悉
用awk比较通用

  1. [lee@linux ~]$ set a=60%
  2. [lee@linux ~]$ set b=50%
  3. [lee@linux ~]$ awk -v a=$a -v b=$b 'BEGIN{if(a>b)print "a is big";else print "b is big"}'
复制代码
 楼主| 发表于 2004-9-10 07:26:03 | 显示全部楼层
新手,只用过CSH,还不知道其他的强大之处。

我执行上面的语句,结果:
awk -v a=$a -v b=$b 'BEGIN{if(a>b)print "a is big";else print "b is big"}'
a: Undefined variable
发表于 2004-9-10 09:07:57 | 显示全部楼层
/home/lee#csh
[lee@linux ~]$ set a=60%
[lee@linux ~]$ set b=50%
[lee@linux ~]$ awk -v a=$a -v b=$b 'BEGIN{if(a>b)print "a is big";else print "b is big"}'
a is big
[lee@linux ~]$ set a=30%
[lee@linux ~]$ set b=50%
[lee@linux ~]$ awk -v a=$a -v b=$b 'BEGIN{if(a>b)print "a is big";else print "b is big"}'
b is big
[lee@linux ~]$ awk --version
GNU Awk 3.1.1
Copyright (C) 1989, 1991-2002 Free Software Foundation.
 楼主| 发表于 2004-9-10 09:11:15 | 显示全部楼层
多谢,版本的差异..........
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表