Chinaunix

标题: bash中[可以使用正则吗? [打印本页]

作者: tianlijian    时间: 2009-05-23 12:29
标题: bash中[可以使用正则吗?
bash中[ test 可以使用正则吗?
[[ 'a' =~ '[ab]' ]] && echo ok
按照man的说法,这句话应该输出ok?但实际没有输出?为什么?应该如果修改?谢谢。

[ 本帖最后由 tianlijian 于 2009-5-23 12:31 编辑 ]
作者: nomyself    时间: 2009-05-23 12:58
试试

正则中不加  '' 或 "" 就行了

  1. [[ "$a" =~ [ab] ]] && echo ok ||echo flase
复制代码

[ 本帖最后由 nomyself 于 2009-5-23 13:03 编辑 ]
作者: hakajawa    时间: 2009-05-23 13:23
可以 的
作者: tianlijian    时间: 2009-05-23 15:21
原帖由 nomyself 于 2009-5-23 12:58 发表
试试

正则中不加  '' 或 "" 就行了

[[ "$a" =~ [ab] ]] && echo ok ||echo flase

  1. $ [[ "$a" =~ [ab] ]] && echo ok ||echo flase
  2. flase
复制代码


fedora 9中还是不行
作者: 可恶的    时间: 2009-05-23 16:10
[[ 'a' =~ '[ab]' ]] && echo ok
这么写是匹配的啊。
要是不匹配,就看看你的bash版本吧。
作者: tianlijian    时间: 2009-05-23 16:36
原帖由 可恶的 于 2009-5-23 16:10 发表
[[ 'a' =~ '[ab]' ]] && echo ok
这么写是匹配的啊。
要是不匹配,就看看你的bash版本吧。

唉,这个命令好像在不同的distro里面不太一样。两个bash都是3.2.39

有的distro不加引号才正确。可能与bash设置有关。

[ 本帖最后由 tianlijian 于 2009-5-23 16:42 编辑 ]

QQ截图未命名.gif (224 KB, 下载次数: 25)

QQ截图未命名.gif

作者: nomyself    时间: 2009-05-23 20:43
标题: 回复 #6 tianlijian 的帖子
我也是这么想的,看别人写的加 "" 行, 我的不加才行。

不知道是哪设置的问题

centos 5.2 上不加行。

ubuntu 9.04 不加也行,加不行。

unix-center上的用不用' " 都行。

  1. -bash->uname -a
  2. Linux fedora.unix-center.net 2.6.27.10-grsec2.1.12 #2 SMP Fri May 8 07:04:03 CST 2009 i686 i686 i386 GNU/Linux
  3. -bash->bash --version
  4. GNU bash, version 3.2.39(1)-release (i386-redhat-linux-gnu)
  5. Copyright (C) 2007 Free Software Foundation, Inc.
复制代码




问个问题,unix-center 上的top 怎么实现的只显示你自己用户的进程的??

[ 本帖最后由 nomyself 于 2009-5-23 21:00 编辑 ]
作者: tianlijian    时间: 2009-05-23 22:14
标题: 回复 #7 nomyself 的帖子
grsecurity
作者: nomyself    时间: 2009-05-24 12:59
标题: 回复 #8 tianlijian 的帖子
谢谢!
貌似很强大的东西




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2