免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2229 | 回复: 7
打印 上一主题 下一主题

case语句变量匹配的问题,急! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-18 17:22 |只看该作者 |倒序浏览
如下语句:
var1=bb
var2=aa|bb|cc|dd
case $var1 in
    $var2) echo "yes" ;;
           *) echo "no"  ;;
esac
但我发现var2的内容被当成了整体,而不是单独的匹配aa,bb,cc,dd。
因为var2是不定的,来自配置文件,因此有这个需求。
另外我试了很多种方法,都不行(如eva, aa\|bb\|cc..)
谁能帮我,谢谢!

论坛徽章:
0
2 [报告]
发表于 2004-06-18 22:28 |只看该作者

case语句变量匹配的问题,急!

var2=(aa bb cc dd)

论坛徽章:
0
3 [报告]
发表于 2004-06-18 22:41 |只看该作者

case语句变量匹配的问题,急!

@_@

  1. var1=bb
  2. var2="aa|bb|cc|dd"
  3. echo $var2|grep -q $var1
  4. case $? in
  5. 0)    echo "yes" ;;
  6. *)    echo "no" ;;
  7. esac
复制代码

论坛徽章:
0
4 [报告]
发表于 2004-06-18 23:26 |只看该作者

case语句变量匹配的问题,急!

var1=bb
case #var1 in
aa|bb|cc|dd) echo "yes"
)* echo "no"
esac

论坛徽章:
0
5 [报告]
发表于 2004-06-19 10:03 |只看该作者

case语句变量匹配的问题,急!

谢谢bigirl,我很喜欢你的思路

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2004-06-20 03:32 |只看该作者

case语句变量匹配的问题,急!

若不用 case ,可試:

echo $var2|grep -wq $var1 && echo yes || echo no

论坛徽章:
0
7 [报告]
发表于 2004-06-20 22:22 |只看该作者

case语句变量匹配的问题,急!

to:网中人,谢谢。
语句简单固然好,但我更喜欢清晰的东西。并且我的case语句的内容并不是这么yesno这么简单的。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2004-06-20 23:29 |只看该作者

case语句变量匹配的问题,急!

這個已經夠清析了...
當你看完 shell 十三問之 10 (含練習):
http://bbs.chinaunix.net/forum/viewtopic.php?p=1634118#1634118

你會發現:哦,也不難... ^_^
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP