Я пытаюсь изменить разрешение для файла, заданного в качестве аргумента командной строки. Пожалуйста, помогите мне
Вся постановка задачи выглядит следующим образом:
Напишите сценарий оболочки, чтобы изменить разрешение на чтение и запись для файла на чтение, запись и выполнение для всех.
Если файл существует, отобразить как,
"Файл существует!"
еще отображается как,
"Файл не существует"
Если файл имеет права на чтение и запись, отображается как,
«Разрешение на файл было изменено»
Предположим, что имя файла задано в качестве аргумента командной строки.
Ниже приведен код, который я пробовал.
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
Разрешение на файл не установлено