荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: jjk (UNIX+C+XML+?? 傻了?), 信区: InstallBBS
标  题: 精华索引脚本[fwd]
发信站: 荔园晨风BBS站 (Thu Apr 25 10:25:58 2002), 转信

【 以下文字转载自 jjk 的信箱 】
【 原文由 jjk.bbs@apue.dhs.org 所发表 】
发信人: altmayer (alt·尼古丁中毒~), 信区: SYSOP
标  题: 站长看看这个脚本吧
发信站: UNIX编程 (2002年04月17日23:13:01 星期三), 站内信件

#!/usr/bin/perl

#dirtree.pl yourdir
#write by wind@lostemple.dhs.org
#         Altmayer@lostemple.dhs.org
#                                       2002.04.17

@flag=("┣","━","┗","┳","┃");
$/ = "#\n";
my $tmp="^[[1;0;30;47m本版精华区索引^[[m";
&dirlist($ARGV[0], "$flag[0]$flag[1]","100",$tmp);

sub dirlist(){
    my $dir=$_[0];
    my $pre=$_[1];
    my $fd=$_[2];
    my $laststr=$_[3];

    open($fd,"<$dir/.Names") ||  die "hehefaint cant find the file";
    my $newline=<$fd> ||  die "hehefaint cant find the file";
    $newline=<$fd>;
    if($newline=<$fd>){
        $laststr=~s/$flag[1]/$flag[3]/;
    }
    print("$laststr\n");
    while($pre=~/$flag[0]/){
        my @array=split(/\n/,$newline,-1);
        $newline=<$fd> || $pre=~s/$flag[0]/$flag[2]/;
        my $name=$array[0];
        if($name =~ m/(Name)=(.{0,38}) ?.*/){
            my $title=$2;
            $title="$title  ";
            my $path=$array[1];
            $path =~ m/(Path)=~\/(.*)/;
            my $file=$2;
            $title=~s/\[推荐\]/^[\[1;35m\[推荐\]^[\[m/;
            if(-d "$dir/$file"){
                $title="^[[1;34m$title^[[m";
                if( $title=~s/\[专集\]/^[\[1;31m\[专集\]/||
                    $title=~s/\[杂牌\]/^[\[1;33m\[杂牌\]/||
                    $title=~s/\[N\]/^[\[1;36m\[N\]/){
                    print("$pre>$title\n");
                }
                else{
                    my $newpre=$pre;

                    $newpre=~s/$flag[0]/$flag[4]/;
                    $newpre=~s/$flag[2]/  /;
                    $newpre=~s/$flag[1]/$flag[0]/;

                    $newpre="$newpre$flag[1]";
                    &dirlist("$dir/$file","$newpre",$fd+"1","$pre>$title");
                }
            }
            else{
                print("$pre>$title\n");
            }
        }
    }
    close($fd);
}
--
※ 修改:·altmayer 於 04月18日02:22:46 修改本文·[FROM: 211.80.41.106]
※ 来源:·UNIX编程 apue.dhs.org·[FROM: 211.80.41.106]
--
※ 转寄:·UNIX编程 apue.dhs.org·[FROM: 210.39.3.50]
--
※ 转载:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.146]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店