Командная строка – это стандартный способ выполнения задач в Linux. Некоторые устройства Linux, такие как серверы, как правило, вообще не имеют какого-либо графического интерфейса, что требует использования команд для управления им. Настольные компьютеры Linux, как правило, имеют графический интерфейс, чтобы сделать их более доступными, но, как правило, у вас нет полной функциональности и универсальности конфигурации, которые вы получаете от использования команд в терминале.
Одна из стандартных команд, которую вам следует изучить, – это «rm». Сокращенно от «Remove», «rm» позволяет удалять файлы и, в некоторых случаях, каталоги. Однако «rm» – рискованная команда, так как легко удалить файлы, которые вы не обязательно намеревались создать, и потенциально поставить под угрозу возможность продолжения работы вашей установки Linux.
Что не делать
Учитывая мощь «rm», рекомендуется убедиться, что вы понимаете, чего не следует делать, прежде чем пытаться его использовать. Флаг «-r» используется для рекурсивного применения удаления ко всем каталогам в указанном каталоге. Это позволяет удалить каталог и все, что в нем. Флаг «-f» используется для принудительного удаления и не запрашивает подтверждение удаления важных файлов. Комбинация этих двух флагов «-rf» позволяет вам удалять целые наборы каталогов без запроса подтверждения.
Совет: Как и во многих других командах, вы можете комбинировать флаги командной строки, такие как «-r -f», с «-rf». Порядок флагов не имеет значения, поэтому «-fr» будет делать то же самое.
В худшем случае вы можете случайно запустить команду в корневом каталоге. Команда рекурсивно удалит с вашего жесткого диска все, что ваш пользователь имеет права редактировать, и полностью испортит вашу установку Linux. Чтобы защитить вас от наихудшего сценария, корневой каталог «/» по-другому обрабатывается «rm». Вам нужно будет использовать «sudo» и флаг «–no-preserve-root», чтобы удалить все, это запускает команду с правами root и удаляет защиту для корневого каталога соответственно.
Примечание: вам никогда не следует пытаться комбинировать команду «rm» с флагами «-rf» и указывать команду на корневой каталог, если вы не уверены на 100%, что вам больше никогда не понадобится система.
Совет: Двойное тире в начале «–no-preserve-root» сделано намеренно. Это стандартный синтаксис командных флагов Linux, в котором однобуквенные флаги используют одно тире, а многобуквенные флаги начинаются с двойного тире. Например, флаг «-h» часто, но не всегда, используется для открытия страницы справки, тогда как флаг «–help» обычно делает то же самое. Двойное тире помогает отличить многобуквенный флаг от комбинации нескольких однобуквенных флагов, таких как «-h -e -l -p».
Будьте очень осторожны при использовании флагов «-rf» с командой «rm», особенно при использовании разрешений Sudo. Никогда не следует использовать команду –no-preserve-root. В идеале каждый раз перед запуском команды «rm» необходимо дважды проверять, не допустили ли вы опечатки.
Подстановочный знак «*» также опасно использовать с командой «rm», поскольку он выберет все в текущем каталоге, за исключением других каталогов, если не указано «-r».
Как использовать «rm»
Чтобы безопасно использовать «rm», вы всегда должны дважды проверять свою команду, чтобы убедиться, что вы не допустили опечаток или автозаполнения для неправильного имени файла. В идеале вы должны удалять только один файл за раз, но если вы будете осторожны, использование подстановочного знака «*» для выбора нескольких файлов также может работать. Например, команда «rm * .txt» удалит все файлы в текущем каталоге, заканчивающиеся на «.txt».
Аналогичная команда «rmdir» – более безопасный способ удаления каталогов, потому что, если вы не укажете никаких флагов, она может удалить только пустые каталоги. Использование «rm» и «rmdir» предотвращает случайное рекурсивное удаление данных.
Команда «rm -r» необходима для удаления каталога и его содержимого, однако вы должны быть уверены, что хотите удалить это содержимое.