Изменить права на чтение и запись файла - PullRequest
0 голосов
/ 07 июля 2019

Я пытаюсь изменить разрешение для файла, заданного в качестве аргумента командной строки. Пожалуйста, помогите мне

Вся постановка задачи выглядит следующим образом:

Напишите сценарий оболочки, чтобы изменить разрешение на чтение и запись для файла на чтение, запись и выполнение для всех.

Если файл существует, отобразить как,

"Файл существует!"

еще отображается как,

"Файл не существует"

Если файл имеет права на чтение и запись, отображается как,

«Разрешение на файл было изменено»

Предположим, что имя файла задано в качестве аргумента командной строки.

Ниже приведен код, который я пробовал.

f="$1"
if [ -e $f ]
then echo "File Exists!"

elif [ ! -e $f ]
then 
echo "File does not Exist" && exit
fi

if [ -w $f ] && [ -r $f ]
then 
chmod o-rw $f && echo "File Permission has been changed"
fi

Ожидаемый результат:

Пример вывода1:

Файл существует! Разрешение файла было изменено

Пример вывода2:

Файл не существует

Фактический результат:

Неудачный тестовый пример 2

Разрешение на файл не установлено

1 Ответ

0 голосов
/ 25 июля 2019
  1. f = "$ 1"
  2. если [-e $ f], то выведите "File Exists!"
  3. elif [!-e $ f] затем вывести «Файл не существует» && exit
  4. fi
  5. , если [-w $ f] && [-r $ f], тогда chmod 777 $ f && echo »Разрешение файла было изменено "
  6. fi

просто измените -> chmod 777

...