Perl 脚本无法以写入模式打开文件

Perl script unable to open a file in write mode

因为我是 Perl 的新手,任何人都可以帮我解决这段代码。 我想将内容写入名为 redirectedOutputFile 的文件(如果不存在,请创建一个这样的文件)。

perlRedirect.pl

$var = @ARGV[0];

print "Hello!\n";


$filepath = "/tools/<some_location>/testdir1/redirectedOutputFile";
open(FILE_HANDLE, ">", $filepath) or die("$filepath: $!");

#system("chmod 777 redirectedOutputFile");
print FILE_HANDLE "Permissions given!\n";

foreach(1..$var){
    #print "Hi!\t";
    print FILE_HANDLE "$_\n";

}

print FILE_HANDLE "Done!\n";

当我执行脚本时使用 $ perl perlRedirect.pl 10

我得到输出:

/tools/<some_location>/testdir1/redirectedOutputFile: Permission denied at perlRedirect.pl line 14. 

我希望脚本在不存在的情况下创建一个新文件并将内容存储在同一个文件中。另外,我可以在此脚本中更改 redirectedOutputFile 的权限吗? 谢谢。

我在 sudo 的帮助下尝试了 运行 脚本,它工作正常!

我把执行线改为 sudo perl perlRedirect.pl 5

有了这个,我得到了输出: Hello!