Включить подтверждение для команд с флагом принудительного выполнения

Включить подтверждение для команд с флагом принудительного выполнения

Есть ли возможность включить подтверждение для rm -rf. У нас был настроен псевдоним, rm=rm -iпоэтому всякий раз, когда мы удаляем файл, он запрашивает подтверждение, но если указан флаг -f, он не будет запрашивать подтверждение.

Итак, есть ли возможность запросить подтверждение для команды rm(Or rm -r) с флагом силы, который предназначен для команд rm -fи ?rm -rf

решение1

Похоже, вы хотите отключить или принудительно включить проверку параметров. Посмотрите набезопасный-rmили создайте псевдоним с функцией (напримерздесь).

решение2

rm -rf — очень мощная команда, при ее выполнении нужно быть очень внимательным.

Это может помочь вам при включении подтверждения.

http://www.howtogeek.com/183690/enable-the-confirmation-when-deleting-files-and-folders-using-the-rm-command-in-ubuntu/

решение3

Исправлен запрос подтверждения на команду rm с флагом –f. Протестировано несколько случаев удаления, работает.

Вы можете добавить следующий скрипт в файл .bashrc.

rm() {
     if [[ $* == -rf* ]]; then
           shift 1;
           command rm -rfi "$@" | more
     elif [[ ${@: -1} == -rf* ]]; then
           command rm "$@" -rfi | more
    else
           command rm -i "$@"
    fi
}

Убедитесь, что псевдоним для rm не задан, в противном случае при выполнении исходного .bashrc мы получим ошибку.

Это работает, когда мы указываем –rf как для первого, так и для последнего, как показано ниже, а также это работает для файлов (поэтому нет необходимости в псевдониме rm=rm-i)

[root@localhost ~]# mkdir test
[root@localhost ~]# rm -rf test
rm: remove directory ‘test’? 
[root@localhost ~]# rm test -rf
rm: remove directory ‘test’? 
[root@localhost ~]#

Связанный контент