Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29336486
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类:

2009-12-25 08:46:23

Shell学习专题之文件名置换

[整理人:hkebao@126.com 整理时间:2009-12-25]

本专题讨论内容如下:

1、 匹配文件名中的任何字符串。

2、 匹配文件名中的单个字符。

3、 匹配文件名中的字母或数字字符

以下是特殊字符:

*     匹配文件名中的任何字符串,包括空字符串。

?   匹配文件名中的任何单个字符。

[…] 匹配[]中所包含的任何字符

[!...] 匹配[]中非感叹号! 之后的字符

4.1 使用*

表示匹配文件名中的任何字符串。例如

$ ls app*  表示匹配以app打头后面跟随任何字符串,包括空字符串。

在使用cd命令切换路径的时候,通过使用* 号还可以省去输入整个路径的麻烦。例如:

例如:ls

-rw-r--r--  1 root root    6 11 24 08:09 a.txt

-rw-r--r--  1 root root   79 11  7 19:26 conf.conf

-rw-r--r--  1 root root 1064 2009-03-21  log.py

-rw-r--r--  1 root root 1446 2009-03-27  log.pyc

drwxr-xr-x  3 root root 4096 11 26 11:10 newMonitor

drwxr-xr-x  2 root root 4096 11  9 16:36 rpc

-rw-r--r--  1 root root 1630 11  7 03:09 run.log

-rw-r--r--  1 root root 7773 2009-03-27  S2Server.py

drwxr-xr-x  7 root root 4096 11 26 10:30 shell

现在我要进入 newMonitor目录就可以输入

cd *or         表示以or 结尾的目录!

 

4.2 使用?

可以匹配文件名中的任何单个字符。例如

列出文件名以任意两个字符开头,接着是R后面跟任何字符的文件!

$ls ??R*

 

4.3 使用[…][!...]

而且我们可以通过使用一个横杠- 来连接两个字母或数字,以此表示一个范围。

示例:(如果没有使用- 则表示或者或者)

I o 开头的文件名示例:

$ls [io]*

其中的[] 表示是一个区间范围的!

 

这样的话我们在将来的查找定位文件或目录的时候就能够快速找到所要的文件了!

 

阅读(863) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~