下面的脚本功能正常。它调用批处理文件,该文件使用PUTTY或scpecically psftp建立连接并传输少量文件。传输完成后,我继续使用perl脚本将文件移动到另一个目录。
我的问题是如何从PSFTP应用程序中捕获错误?如果xfering或建立连接时出错,我想生成一个标志然后我可以在perl中捕获并阻止其他任何事情发生并向我发送电子邮件。我只需要指导错误地从PSFTP应用程序生成标志。
非常感谢你!
我的
use warnings;
use File::Copy;
my $TheInputDir = "//NT6/InfoSys/PatientSurvey/Invision/CFVMC/";
my $TheMoveDir = "//NT6/InfoSys/PatientSurvey/Invision/CFVMC/Completed";
system ('2166_PG_Upload_Batch.bat');
opendir (THEINPUTDIR, $TheInputDir);
@TheFiles = readdir(THEINPUTDIR);
close THEINPUTDIR;
#Get all the files that meet the naming convention
foreach $TheFile(@TheFiles)
{
if($TheFile =~ /2166/)
{
print "$TheFile\n";
move ("$TheInputDir$TheFile","$TheMoveDir");
}
}
答案 0 :(得分:2)