Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1326956
  • 博文数量: 268
  • 博客积分: 10698
  • 博客等级: 上将
  • 技术积分: 2867
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-14 22:21
文章分类

全部博文(268)

文章存档

2012年(19)

2011年(13)

2010年(29)

2009年(26)

2008年(99)

2007年(82)

我的朋友

分类: LINUX

2009-12-10 00:53:49

当前目录下有三种视频文件,都是用amule下载的,文件中有大量的中文字符,所有文件的后缀都是英文,分别为 rm rmvb avi 。
如果
# ls *m
# ls *b
# ls *i
这样使用的结果完全正常,可以把想要的一个不漏地筛出来。
但如果用过滤(或者叫忽略) -I ,或许会有一点小麻烦:
# ls -I '*m' -I '*b' I '*i'
其中有的文件能过滤掉,有的不能,原因在于当前终端的locale是zh_CN.GBK,在这种情况下,只有文件名中的汉字也是GBK的才行得通,而那些包含有UTF-8编码的汉字的文件名则无法过滤,尽管所有文件的后缀都一样是英文。确实,我最近换了一下locale,因为特殊用途要用到fcitx,而fcitx在GBK环境下效果是最好的,所以是不得已才改了locale,所以电骡目录下有两个时期下载的包含两种编码的汉字的文件名。而作为国际标准的UTF-8显然得到了应有的照顾,当locale是zh_CN.UTF-8的情况下通吃,用 ls -I 一点错误也没有,不管什么文件都能过滤。

--------------------
09.12.10
Ubuntu 8.04.1


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