OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
-
eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
#1
帖子
由 eexpress » 2005-10-07 22:20
看网页看到的
代码: 全选
shopt extglob 能在命令行采用扩充的正则表达式:
?(pattern-list) 匹配零个或一个模式。
*(pattern-list) 匹配零个或多个模式。
+(pattern-list) 匹配一个或多个模式。
@(pattern-list) 确切匹配模式。
!(pattern-list) 匹配除指定模式以外的任何字符。
例如:ls -lad !(*.p?(df|s)) 将列出 当前目录下非 pdf 和 ps 文件。
但是
代码: 全选
$ ls -lad !(*.p?(df|s))
bash: !(*.p?(df|s)): event not found
而且命令不进入历史。
● 鸣学
-
zhuzhzh
- 帖子: 265
- 注册时间: 2005-07-28 15:08
#2
帖子
由 zhuzhzh » 2005-10-07 23:14
ls -l | grep -e '[^p(df|s)]'
无声胜有声
-
eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
#3
帖子
由 eexpress » 2005-10-07 23:31
我就是想试试,并理解他那个写法。grep的不需要。
● 鸣学
-
leal
- 帖子: 1119
- 注册时间: 2005-08-29 14:49
- 来自: 杭州
-
联系:
#4
帖子
由 leal » 2005-10-08 14:14
eexpress 写了:我就是想试试,并理解他那个写法。grep的不需要。
先使用 shopt -s extglob 设置extglob 为 on(shopt -u extglob 置为off)
然后再试用那个命令
shopt -- show option
extglob -- extend glob 扩展通配符?
-
eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
#5
帖子
由 eexpress » 2005-10-08 14:25
我就是在家里执行了
shopt extglob on
不行。
原来还有带 -s
● 鸣学
-
leal
- 帖子: 1119
- 注册时间: 2005-08-29 14:49
- 来自: 杭州
-
联系:
#6
帖子
由 leal » 2005-10-08 14:38
不用on
直接shopt -s extglob
set
-u
unset
shopt 看所有opt设置状态