文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>文本数据过滤实践

文本数据过滤实践

时间:2005-04-30  来源:chauney

相信大家上ftp站点时都曾看到过有的里面会有目录索引吧,可是那个这么大的数据是怎样整理出来的呢?他们的方法我是不晓得的^_^,我自己研究了一番,算是给出一个自己满意的答案吧。全部的数据处理都由awk来实现的。

      下面是原始数据片段:(可以用ls -lR 获得自己终端当前所在目录下的所有文件资料)
drw-rw-rw-   1 user     group           0 Apr 20 14:52 Game
drw-rw-rw-   1 user     group           0 Apr 14 21:47 Picture
drw-rw-rw-   1 user     group           0 Apr 20 10:55 _incoming
drw-rw-rw-   1 user     group           0 Apr 20 11:11 software
drw-rw-rw-   1 user     group           0 Apr 14 21:58 创业园地
-rw-rw-rw-   1 user     group           0 Apr 20 13:23 上传文件请用upload:upload账号

/Game:
total 0
drw-rw-rw-   1 user     group           0 Apr 20 10:52 办公室游戏集合

/Game/办公室游戏集合:
total 1181113
-rw-rw-rw-   1 user     group    89373111 Apr 18 18:54 办公室游戏Christopher Lau——balfast ().exe
-rw-rw-rw-   1 user     group    205255269 Apr 18 18:54 办公室游戏Christopher Lau——balfast (10).exe
-rw-rw-rw-   1 user     group    40821272 Apr 18 18:56 办公室游戏Christopher Lau——balfast (11).exe
-rw-rw-rw-   1 user     group    57572502 Apr 18 19:00 办公室游戏Christopher Lau——balfast (6).exe
-rw-rw-rw-   1 user     group    85541427 Apr 18 19:05 办公室游戏Christopher Lau——balfast (7).exe
-rw-rw-rw-   1 user     group    80989280 Apr 18 19:11 办公室游戏Christopher Lau——balfast (8).exe
-rw-rw-rw-   1 user     group    45174281 Apr 18 19:14 办公室游戏Christopher Lau——balfast (9).exe

/Picture:
total 190076
drw-rw-rw-   1 user     group           0 Apr 14 21:47 2004_1006舟山普陀(1)
drw-rw-rw-   1 user     group           0 Apr 16 15:32 2005.3.19中科管理论坛
……………………………………………………
下面是过滤出全部目录的脚本:
function filter() {
 if [ $# -eq 1 ]
  then
   {
    cat $1 |
    awk '{ 
     if( $1 ~ //*:/) print $1;
    }' |
    awk -F '[/]' '{
     for (i=2;i<=NF;i++) {
      if($i ~ //*:/) {
       printf "||";
       for( j=3;j<=i;j++ ) {
        printf "     |";
        if( j==i ) printf "------";
       }
     print $i;
      }
     }
    }' |
    awk '{
     gsub(":","");
     print $0;
    }'
   }
 else 
  echo Usage: filter filename
 fi
}
呵呵,这里也可以不通过函数来实现,随自己喜欢了
下面是输出片段:
[root@localhost root]source filter.sh
[root@localhost root]filter down
||Game
||     |------办公室游戏集合
||Picture
||     |------2004_1006舟山普陀(1)
||     |     |------新建文件夹2
||     |------2005.3.19中科管理论坛
||     |------美丽的紫金港
||     |------面试
||     |------勤创中心
||     |     |------风景
||     |     |------集体活动--旅游
||     |     |------生活照
||     |------校管部活动照片
||     |     |------05.3.26大清谷春游
||     |     |     |------132CANON
||     |     |     |------133CANON
||     |     |------12.12校管部聚餐照片
||     |     |------pic
||_incoming
||     |------Documents_incoming
||     |------Ebook_incoming
||     |------Game_incoming
||     |------Others
||     |------Picture_incoming
||     |------Program_incoming
||     |------Software_incoming
||     |------Study_incoming
||     |     |------课件请上传到这里
||     |------Temp_incoming
||     |------Virus_incoming
||     |     |------病毒库更新
||     |     |     |------mcafee病毒库更新
||     |     |     |------norton病毒库更新
||     |     |     |------卡巴斯基病毒库更新
||     |     |     |------瑞星病毒库更新
||     |     |------流行性病毒专杀工具更新
…………………………………………………………………………

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载