Включение подтверждения при удалении файлов и папок с помощью команды rm
Большинство пользователей командной строки знают, что команда «rm» для удаления и удаления файлов является довольно мощной, способной удалить практически любой файл, который можно вообразить в файловой системе, независимо от того, следует ли его удалять или нет. После того, как вы добавите подстановочные знаки и sudo, rm и srm, потому что они экспоненциально более мощные и потенциально опасные, поэтому для опытных пользователей, которые хотят добавить уровень безопасности к функции rm, они могут включить диалоговое окно подтверждения с помощью команд rm и srm. Это также предлагает полезный защитный механизм для тех, кто изучает командную строку и хочет установить уровень проверки между мгновенным удалением файлов и их выполнением команд.
Этот трюк состоит из двух частей: первая — это просто знание правильного флага для включения и использования подтверждения перед удалением файла или папки с помощью rm, а вторая использует псевдоним, чтобы сделать вышеупомянутое удаление с подтверждением в новый параметр по умолчанию для команды rm. Оба этих приема работают в Mac OS X, linux и большинстве других вариантов unix, поэтому он в значительной степени не зависит от операционной системы, а также работает с мощной командой srm secure remove. Очевидно, это нацелено на более продвинутых пользователей, которым удобна командная строка с самого начала, поскольку использование rm и srm не подходят для новичков.
Использование команды rm с подтверждением перед удалением файлов и папок
Синтаксис для включения подтверждения перед удалением любых файлов с помощью rm (или srm) — это просто флаг -i, используемый следующим образом:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
rm -i filename
Например, если вы удаляете файл с именем «theSampleFile.zip» и хотите получить подтверждение перед удалением команды, вы должны использовать следующий синтаксис:
rm -i theSampleFile.zip
После того, как вы нажмете return, вас спросят, хотите ли вы удалить соответствующее имя файла, при этом команда будет повторять точный файл, прежде чем он удалит его следующим образом:
% rm -i theSampleFile.zip
remove theSampleFile.zip? y
Нажатие «y» и возврат отвечает «да» для удаления файла, а нажатие «n» и клавиши возврата отвечает ответом «нет», и файл не будет удален.
Синтаксис rm -i даже работает с -r для получения подтверждения перед рекурсивным удалением каталогов и содержимого файлов содержащихся подпапок:
rm -ir /Example/Folder/
Опять же, вам нужно будет ввести ay или n, прежде чем команда будет завершена для каждого отдельного файла, найденного в каталоге.
Получение того же диалога подтверждения с помощью srm также использует флаг -i:
srm -i /Example/file.zip
Опять же, вы должны использовать клавиши y и n, чтобы подтвердить или отклонить удаление указанных файлов.
Как включить подтверждение команды rm по умолчанию с псевдонимом
Откройте свой .bash_profile или .profile, и вы можете создать псевдоним, например, чтобы изменить синтаксис по умолчанию «rm» на «rm -i», чтобы он стал новым по умолчанию.
alias rm='rm -i'
Вы можете создать псевдоним того же типа с помощью srm, например:
alias srm='srm -i'
Достаточно добавить оба из них в уникальные строки в профиле, затем обновление оболочки позволит получить доступ к обоим из bash, zsh, tcsh или из того, что ваша оболочка используется.
Есть ли другие дополнительные советы по защите rm и srm в командной строке перед удалением файлов? Дайте нам знать об этом в комментариях. А если вы просто хотите узнать больше интересных советов по работе с командной строкой, просмотрите наши сообщения по широкой теме.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)