- 论坛徽章:
- 0
|
这个太麻烦了. 呵呵
我的脚本已经弄好了.
贴出来大家共享一下: 还有一个是问题就是LWP不能进行代理验证? 我用的proxy需要用户名和密码的, 有解决方法么? 谢谢
-----------------------------------------perl script on client
#!/usr/bin/perl -W
use warnings;
require LWP::UserAgent;
use HTTP::Request::Common;
my $browser = LWP::UserAgent->new();
my $url = 'http://10.193.101.250/twiki/bin/psupload';
my $res=$browser->post( $url,
[FILE1 => ["/home/seawolf/zisaohaiyouni.mp3"],
FILE2=> ["/home/seawolf/xconfigure.txt"]],
'Content_Type'=>'form-data');
#die "URL Error: ", $res->status_line unless $res->is_success;
print $res->content;
-----------------------------------------------------------------
-----------------------------------------------perl script on server
#!/usr/bin/perl
use CGI;
$upfilecount = 1;
$maxuploadcount = 2;
$basedir = "/var/www/twiki/bin";
$allowall = "yes";
@theext =(".zip",".exe",".gif");
print "Content-type: text/html\n\n";
while ($upfilecount <= $maxuploadcount) {
my $req = new CGI;
my $file = $req->param("FILE$upfilecount");
if ($file ne "") {
my $fileName = $file;
$fileName =~ s/^.*(\\|\/)//;
my $newmain = $fileName;
my $filenotgood;
if ($allowall ne "yes") {
$extname = lc(substr($newmain,length($newmain) - 4,4));
for(my $i = 0; $i < @theext; $i++){
if ($extname eq $theext[$i]){
$filenotgood = "yes";
last;
}
}
}
if ($filenotgood ne "yes") {
open (OUTFILE, ">$basedir/$fileName");
binmode(OUTFILE);
while (my $bytesread = read($file, my $buffer, 1024)) {
print OUTFILE $buffer;
}
close (OUTFILE);
$message.=$file . " OK!\n";
}
else{
$message.=$file . " Failed!\n";
}
}
$upfilecount++;
}
print $message;
----------------------------------------------------------------- |
|