Я хотел бы предупредить об этом подходе, так как Вы привыкнете к защите - и один день вы можете работать на чужой машине, не Ваш собственный, где таких модификаций не производится, и тогда проблема, скорее всего, будет намного больше.
Я мог бы предложить другой подход:
Я правильно решил такие проблемы (случайные удаления), выполнив инкрементную резервную копию над homedirs (и некоторыми другими критическими областями) каждые 10 минут. Это работает очень хорошо, если вы в основном работаете с разработкой или редакцией (от небольших до средних файлов), это не сработает, если вы будете обрабатывать большие мультимедийные файлы или аналогичные. Я исключил Download и Media и .cache из резервной копии. Я использую bacula, который может быть не слишком легким для настройки для новичков, но есть и другие инструменты. Это некоторая работа, чтобы получить эту надлежащую работу, но на протяжении многих лет она избавляла меня от головных болей, которые я считаю целесообразными.
Главное, что необходимо для выполнения этой работы, - это место для хранения резервных копий. Обычно это на другой машине, которая работает как сервер резервного копирования, но для случая случайного удаления она также может быть защищенным файловым пространством на одном компьютере. Сегодня он, возможно, даже может быть в Интернете (но остерегайтесь проблем безопасности).
Вы можете использовать 'command rm', чтобы игнорировать любые функции или псевдонимы с одинаковым именем для доступа к фактической команде на диске' rm'. – chepner
Это только половина проблемы. Из-за какого-либо юридического вызова нет необходимости извлекать '-f'. Вы можете добавить '-i' в конец любых параметров, которые будут переопределять любые предыдущие' -f', но это слишком сильно изменяет маятник на другой конец спектра. – chepner
Я предполагал, что могу получить доступ к списку флагов, передаваемых моей функции, и просто тщательно разобрать «f» s. – dshapiro