Skip navigation.

青春的岁月

——只因那胸中燃烧的理想

Posts tagged with "perl"

今天更新了perl搜索脚本_V0.9 :)

昨天的脚本有一个非常大的问题,就是如果在搜索一个关键字时,如果是目录,就会把目录里所有的文件都列出来,因为目录名也是关键字的一部分,这样搜索时会出现太多的信息,现在换一种方式,如下:
就是搜索时以文件名为单位,如果文件名匹配,才显示出来。
需要以下几个文件:
ftp.list // cd到/home/ftp目录,使用find ./>ftp.list创建ftp.list文件
se_ftp.list //使用awk -F / '{print NR ":" $NF}' ftp.list
num.list // 作为缓存符合条件的行数
其中最为关键的两个脚本如下:
##======================================
azhoulinux@azhou:~/Desktop$ cat search.pl
#!/usr/bin/perl
##
## To Search the ftp
##
$finfo = <STDIN>;
print "Content-type: text/plain; charset=gb2312 \n\n";
$se_name=`echo $finfo|cut -c 5-` ;
print "you have search for:";
print $se_name;
print "\n\n";
print `./search.sh $se_name`;
exit(0);

##======================================
azhoulinux@azhou:~/Desktop$ cat search.sh
#!/bin/bash

var_char=`awk -F : '{print $0}' se_ftp.list|grep -i "$1"|awk -F : '{print $1}'`


echo "">num_list

for i in `echo $var_char`
do

echo "-e ${i}p">>num_list

done

sed -n `cat num_list` ftp.list|cut -c 3-|awk -F / '{print NR " " $NF "\n" "ftp://211.68.42.243/" $0 "\n"}'

这样就可以搜索了,并且没有上面问题:
附图:


December 2009
S M T W T F S
November 2009January 2010
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31