ls用法

OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
回复
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

ls用法

#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 扩展通配符?
用心×恒 | 豆瓣 | 门户 | Blog
头像
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设置状态
用心×恒 | 豆瓣 | 门户 | Blog
回复