| 
 
   
- UID
 - 2033152 
 - 威望
 - 1 点 
 - 金钱
 - 3090 金币 
 - 点卡
 - 0 点 
 
  | 
1#
 
发表于 2003-9-3 18:21
 |  只看该作者
 
 
 
 [转帖]提供在线听mp3
这个程序是为在服务器端提供在线听mp3歌曲的人减轻制作.m3u文件负担  
而编造的, 它可以将指定目录下面的所有mp3歌曲的路径表示成为  
合法的URL并保存成all.m3u文件  
作者 callmedear.bbs@smth.org- #!/usr/bin/perl -w 
 - # print usage information if no argument offered by user. 
 - if ($#ARGV < 0) 
 - { 
 -   print <<END_USAGE 
 - Usage: mkm3u top-URL dir-of-your-public-html dir-you-want-to-search 
 - For example, 
 - $ mkm3u http://mp3.your.net/~yourID/ /home/yourID/public-html/ mp3-directory 
 - And the result will be saved as all.m3u in your home directory. 
 - END_USAGE 
 - ; 
 - die("End of usage\n"); 
 - } 
 - # if the directory offered by user is not an absolute one, make it be. 
 - if( $ARGV[2] !~ /^\// ) 
 - { 
 -   $pwd = `pwd`; 
 -   chop($pwd); 
 -   $ARGV[2] = $pwd."/".$ARGV[2]; 
 - } 
 - # get the home dir of the user 
 - $home=$ENV{"HOME"}; 
 - print "The home dir of yours is: $home\n"; 
 - open(M3U, ">>${home}\/all.m3u"); 
 - &process_dir("$ARGV[2]"); 
 - print "The result is kept as $home/all.m3u\n"; 
 - close(M3U); 
 - sub process_dir 
 - { 
 -   my($pwd,@subs,$count,$i); 
 -   $pwd = $_[0]; 
 -   print "The present directory is $pwd\n"; 
 -   @subs=<$pwd/*>; 
 -   $count=@subs; 
 -   for($i=0;$i<$count;$i++) 
 -         { 
 -           if($subs[$i] !~ /\/\.?$/) 
 -           { 
 -              if( -f $subs[$i] && $subs[$i] =~ /\.mp3$/i) 
 -              { 
 -               $subs[$i] =~ s/$ARGV[1]/$ARGV[0]/e; 
 -               print M3U "$subs[$i]\n"; 
 -              } 
 -              elsif( -d $subs[$i] ) 
 -              { 
 -               &process_dir("$subs[$i]"); 
 -              } 
 -            } 
 -          } 
 - } 
 
  复制代码 |   
 
 
 
 |