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

问题描述 投票:-1回答:1

由于我是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的权限吗?谢谢。

file perl file-permissions file-handling filehandle
1个回答
0
投票

我尝试在sudo的帮助下运行脚本,并且效果很好!

我将执行行更改为sudo perl perlRedirect.pl 5

这样我得到的输出为:Hello!

© www.soinside.com 2019 - 2024. All rights reserved.