我有run.pl和decrypt.pm錯誤在Perl
run.pl處理:
my $secret2 = "test password";
my $ret=decrypt::decodeIt($secret2);
print $ret;
decrypt.pm:
sub decodeIt {
$tmp="";
.........
.........
.........
return $tmp
}
我打電話decodeIt()子中run.pl.但是在decodeIt sub和run.pl引發錯誤時出了點問題。我不希望看到這些錯誤異常被打印在屏幕上,我想捕獲run.pl中的錯誤,並在下面有錯誤時執行其他操作。我嘗試像下面但不能捕獲錯誤。
if(!decrypt::decodeIt($secret2)){
print "Error in decode";
} else {
my $ret=decrypt::decodeIt($secret2);
print "No Error :".$ret;
}
現在我在屏幕上看到的錯誤是;
Argument "te" isn't numeric in int at decrypt.pm line 61.
Illegal hexadecimal digit 's' ignored at decrypt.pm line 64.
Illegal hexadecimal digit ' ' ignored at decrypt.pm line 64.
Illegal hexadecimal digit 's' ignored at decrypt.pm line 64.
Illegal hexadecimal digit 's' ignored at decrypt.pm line 64.
Illegal hexadecimal digit 'o' ignored at decrypt.pm line 64.
substr outside of string at decrypt.pm line 68.
Use of uninitialized value $string in length at decrypt.pm line 69.
我不想在屏幕上看到這些錯誤。我只想了解是否有錯誤,並在出現錯誤時採取一些措施。
錯誤在'decrypt.pm'。在第61行,我們需要看61-70行可以回答什麼。 – Sobrique
我不想防止錯誤。有錯誤是可以的。我在decrypt.pm的子程序中故意創建錯誤。我只想處理run.pl中的錯誤,我稱之爲子程序。 – ivbtar