Якщо ваше вимога є те , що rm
не скаржиться на відсутні файли, але ви також хочете будь - яких інший висновок rm
, моя пропозиція була б першим випробуванням для існування цільового файлу, і тільки зателефонувати rm
( без з -f
прапором) , якщо файл існує на насправді.
# rest of script
# ...
[ -e "$file" ] && rm "$file"
# ...
# rest of script
Якщо зателефонувати rm -f
у файл, який, наприклад, не має дозволу на запис користувача, видалить файл, а також не надсилатиме звичайний запит для цього сценарію.
У випадку, якщо ви хочете використовувати ту саму ідею з кількома файлами, я створив би визначення функції, наприклад:
qrm() {
for f
do
[ -e "$f" ] && rm "$f"
done
}
Використовуйте його так: qrm file1 file2-does-not-exist *.txt etc here