Perl скрипт не может открыть файл в режиме записи - PullRequest
0 голосов
/ 11 марта 2020

Поскольку я новичок в 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 в этом сценарии? Спасибо.

1 Ответ

0 голосов
/ 12 марта 2020

Я попытался запустить скрипт с помощью sudo, и он отлично работает!

Я изменил строку выполнения на sudo perl perlRedirect.pl 5

С этим я получил вывод как: Hello!

...