Perl 中的文件移动会停止当前脚本吗?

Perl 中的文件移动会停止当前脚本吗?

我怎样才能做到这一点mv ($file $new_file/$1) or die("Errors 2");

所以如果找不到该文件,它会在终端中停止脚本吗?

否则它会不断重复,我需要重新启动 putty 会话,这样我才能输入一些内容

答案1

 use autodie;
 rename($file, "$dir/$newname")
  • 如果因任何原因无法重命名,它就会挂掉。如果文件不存在,则显然重命名失败,这也会被捕获。

答案2

那么这个怎么样:

if ( -f $file ) {
  rename($file, "$dir/$newname")
    or die("Could not rename '$file' to '$dir/$newname'");
} else {
  die("File '$file' does not exist");
}

请阅读该功能的手册rename()以了解它的局限性(perldoc -f rename)以及您可能需要对其进行的操作(例如,move()File::Copy模块中使用)。

相关内容