LINUX.ORG.RU

Проблема с проверкой прав на запись в директорию


0

0

На perl-е пишу скрипт.
Необходимо проверить могу ли я создать файл $my_file в append mode

Проверяю так:
Если (есть файл И в него нельзя писать) ИЛИ (нет файла И нельзя писать
в директорию) то выводим ошибку и выходим

Вот код:
if ( (-e $my_file and ! -w $my_file) or ( ! -e $my_file and ! -w `dirname $my_file`) )
 {
   print stderr "ERROR : permission denied\n";
   exit 5;
 }

Не работает! В директорию есть возможность записи и файла нет - всё
равно выдаёт ошибку!!!
В чём проблема???

`dirname $my_file` -- возвращает также и перевод строки.

$dir=`dirname $my_file`;
chomp $dir;

if ( (-e $my_file and ! -w $my_file) or ( ! -e $my_file and ! -w $dir) )
 {
   print stderr "ERROR : permission denied\n";
   exit 5;
 }

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.