Команда rmdir поможет нам удалить пустую директорию, то есть директорию без файлов и папок. Синтаксис команды очень прост:
Rmdir DIRNAME
В случае если директория не пуста вы увидите следующее сообщение об ошибке.
$ rmdir test rmdir: failed to remove `test": Directory not empty
С помощью опции -p вы можете удалить директорию с вложенной в неё поддиректорией.
$ rmdir -p dir1/dir2/dir3
Команда rmdir -p dir1/dir2/dir3 это эквивалент команды
$ rmdir dir1/dir2/dir3 dir1/dir2 dir1
Если вам потребовалось удалить директорию с содержимым вы можете использовать команду rm :
$ rm -rf DIRNAME
Эта команда удалит директорию, включая все содержащиеся в ней файлы и поддиректории. С осторожностью пользуйтесь данной командой, так как восстановление удаленных файлов не будет легкой процедурой.
Во избежание случайного удаления нужных файлов рекомендую рассмотреть возможность использования опции -i для интерактивного удаления файлов и папок (особенно с правами root).
Вы можете использовать интерактивное удаление в качестве поведения команды rm по умолчанию.
При использовании команды rm на самом деле будет выполняться команда rm -i . Но необходимо обратить внимание на один ньюанс. Не используйте опцию -i в дальнейшем, так как вы не получите желаемого эффекта. Рассмотрим пример:
В следующей команде использование -i не даст вам ожидаемый эффект..
$ rm -irf DIRNAME
В этом случае, при использовании алиаса, команду выше необходимо запускать следующим образом:
$ rm -rf DIRNAME
Все указанные ниже команды эквивалентны и выполняют один и тот же функционал.
Если вам необходима экспертная оценка здания, рекомендую заказать обследование готовых зданий специалистами научно-производственного центра «Технопласт»
Бесплатное распространение, скорость работы и иммунитет к вирусам являются причиной перехода на операционные системы, работающие на ядре Linux. Первый вопрос, с которым сталкивается человек – работа с директивами. О том, как создать и удалить папку в Linux пойдет речь далее.
Решается вопрос двумя способами:
Оба метода имеют индивидуальный подход. Для тех, кто привык большинство операций выполнять мышкой, удобным будет первый метод, если же в работе преобладает использование клавиатуры – второй. Более того, создание каталога в Linux через терминал имеет дополнительные функции, о которых рассказано ниже.
Терминал упрощает работу с файловой системой за счет возможности одновременной работы с несколькими объектами и указания их свойств на этапе задания программы.
Чтобы создать каталог в Ubuntu, используют команду mkdir (от англ. – make directory). При этом нужно обладать правами на запись данных в родительском каталоге. Задание команды предполагает написание имени самой программы и перечисление следом за ней операндов (названий директорий). При необходимости указывают дополнительные опции:
Шаблон полной записи выглядит следующим образом:
mkdir-p-m права имя_папки1 имя_папки2 имя_папки3
Чтобы создать папку в операционной системе Debian, применяют тот же принцип, так как она основана на ядре Linux.
Такой способ выглядит более эстетично, так как не предполагает написание команд. Работа основывается на привычном визуальном отображении операций на экране, управление которыми происходит мышью. Все действия выполняются во встроенном файловом менеджере Nautilus.
Запускается программа путем клика по ее ярлыку на панели инструментов, а также используя меню Dash. Следующим шагом осуществляется переход к директории, в которой планируется создать дочернюю папку. Клик на пустом пространстве менеджера правой кнопкой мыши вызовет контекстное меню, где находится нужный пункт – «Создать папку». Остается задать имя новому каталогу. В отличие от Windows, Linux позволяет использовать все символы раскладки клавиатуры при выборе имени, за исключением дробной черты (слэша). Для сохранения результата необходимо кликнуть на свободном пространстве утилиты.
После создания каталога в Linux для нее задают права доступа по умолчанию, разрешающие выполнять с ней различные операции.
Средства Linux позволяют наложить ограничения на пользование папкой. Для просмотра установленных разрешений применяют команду ls-lt . Результатом ее выполнения является подобная запись:
Здесь d инициализирует namedir как директорию, а каждый последующий символ подразумевает соответствующее действие:
Запись можно разделить на три части. Первые 3 символа устанавливают разрешения для создателя директории, следующие – задают групповые права для файла, указанного в имени группы. Последний набор символов – разрешения для всех остальных пользователей. По приведенному выше примеру ясно, что владелец может выполнять с папкой любые действия, в то время как для групп и посторонних закрыта возможность записи.
Для редактирования разрешений доступа к папке или файлу используют команду chmod . Она оперирует тремя цифровыми значениями:
Для одновременного открытия нескольких прав цифры суммируются. Важно помнить, что права делятся на три категории: владелец, группа, остальные пользователи. Чтобы позволить только группе читать папку и записывать в нее информацию, в терминале задается следующая команда:
Изменение управляющей папкой группы реализуется командой chgrp . Сначала следующим образом создается учетная запись группы:
Теперь можно передать группе управление папкой:
chgrp accgroup namedir
Если компьютер подключен к локальной сети, может возникнуть потребность в общем пользовании каталогом или файлом. Организация общего доступа в Ubuntu возможна с помощью файлового менеджера.
Необходимо кликнуть правой кнопкой мыши по ярлыку каталога и затем выбрать пункт «Общедоступная папка локальной сети». Если его нет – отсутствует дополнение Nautilus Share, которое легко находится в Ubuntu Software Center. После установки менеджер нужно перезапустить.
Если нужно организовать доступ по имени пользователя и паролю, устанавливается расширение System Config Samba. Через настройки оно позволяет добавить или удалить пользователя, для которого открывается директория.
Подробные инструкции по настройке Samba описаны в видео:
Ubuntu предоставляет возможность удалить каталог с помощью команды rmdir . Для этого записывается ее имя, и перечисляются каталоги (при условии нахождения в нужной директории):
rmdir namedir1 namedir2
Важно! Если у пользователя открыт другой каталог, стоит указать полный путь во избежание исчезновения нужных файлов:
rmdir home/dir1/namedir1
Чтобы удалить папку с файлами в Ubuntu, необходимо воспользоваться командой rm-rf :
Для удаления нескольких директорий с помощью rmdir их все нужно перечислить.
Создать и удалить папку в Linux можно несколькими способами, каждый из которых обладает своими преимуществами. На выбор предоставляются файловый менеджер Nautilus и терминал. Если первый более привычен и удобен визуально, то второй ускоряет процесс и предоставляет большее количество возможностей.
Команды rm и rmdir удаляют файлы и каталоги в Linux, macOS и других Unix-подобных операционных системах. Они похожи на команды del и deltree в Windows и DOS. Эти команды очень мощные и имеют довольно много опций.
Важно отметить, что файлы и каталоги, удаленные с помощью rm и rmdir , не перемещаются в корзину. Они сразу же удаляются с вашего компьютера. Если вы случайно удалили файлы с помощью этих команд, вы сможете восстановить их только из резервной копии.
Самый простой случай — это удаление одного файла в текущем каталоге. Введите команду rm, пробел, а затем имя файла, который вы хотите удалить.
Rm file_1.txt
Если файл не находится в текущем рабочем каталоге, укажите путь к местоположению файла.
Rm ./path/to/the/file/file_1.txt
Вы можете передать более одного имени файла в rm. При этом удаляются все указанные файлы.
Rm file_2.txt file_3.txt
Подстановочные знаки могут использоваться для выбора групп файлов, которые будут удалены. Знак * представляет несколько символов, а символ ? представляет один символ. Эта команда удалит все файлы изображений png в текущем рабочем каталоге.
Rm * .png
Эта команда удалит все файлы с одним символьным расширением. Например, это удалит File.1 и File.2, но не File.12.
Рм *.?
Если файл защищен от записи, вам будет предложено удалить файл. Вы должны ответить с помощью y или n и нажать «Enter».
Чтобы снизить риск использования rm с подстановочными знаками, используйте параметр -i (интерактивный). Для этого необходимо подтвердить удаление каждого файла.
Rm -i * .dat
Опция -f (сила) противоположна интерактивной. Он не запрашивает подтверждение, даже если файлы защищены от записи.
Rm -f имя_файла
Чтобы удалить пустой каталог, используйте опцию -d (directory). Вы можете использовать подстановочные знаки (* и?) В именах каталогов так же, как и в именах файлов.
Rm -d directory
Предоставление более одного имени каталога удаляет все указанные пустые каталоги.
Rm -d directory1 directory2 /path/to/directory3
Чтобы удалить не пустые каталоги, используйте параметр -r (рекурсивный). Чтобы было ясно, это удаляет каталоги и все файлы и подкаталоги, содержащиеся в них.
Rm -r directory1 directory2 directory3
Если каталог или файл защищен от записи, вам будет предложено подтвердить удаление. Чтобы удалить не пустые каталоги и подавить эти приглашения, используйте вместе параметры -r (рекурсивный) и -f (принудительный).
Rm -rf directory
Здесь требуется осторожность. Ошибка в команде rm -rf может привести к потере данных или неисправности системы. Это опасно, и осторожность — лучшая политика. Чтобы получить представление о структуре каталогов и файлах, которые будут удалены командой rm -rf, используйте команду tree .
Используйте apt-get для установки этого пакета в вашу систему, если вы используете Ubuntu или другой дистрибутив на основе Debian. В других дистрибутивах Linux используйте инструмент управления пакетами вашего дистрибутива Linux.
Sudo apt-get install tree
Выполнение команды tree дает простую для понимания диаграмму структуры каталогов и файлов под каталогом, из которого она запускается.
Вы также можете указать путь к команде tree чтобы он запускал дерево из другого каталога в файловой системе.
Tree path/to/directory
Команда rm также имеет параметры --one-file-system , --no-preserve-root , --preserve-root , но они рекомендуются только для опытных пользователей. Если вы что-то не так, вы можете случайно удалить все ваши системные файлы.
Есть еще одна команда rmdir , которую вы можете использовать для удаления каталогов. Разница между rm и rmdir том, что rmdir может удалять только пустые каталоги. Он никогда не удалит файлы.
Самый простой случай — удаление одного пустого каталога. Как и в случае с rm , вы можете передать несколько имен каталогов в rmdir или rmdir путь к каталогу.
Удалите один каталог в текущем каталоге, передав его имя в rmdir:
Rmdir directory
Удалите несколько каталогов, передав список имен в rmdir:
Rmdir directory1 directory2 directory3
Удалите каталог не в текущем каталоге, указав полный путь к этому каталогу:
Rmdir /path/to/directory
Если вы попытаетесь удалить не пустую папку, rmdir выдаст вам сообщение об ошибке. В следующем примере rmdir успешно и без вывода сообщений удаляет каталог clients но отказывается удалять каталог projects поскольку он содержит файлы. Каталог projects остается точно таким, каким он был, а файлы в нем нетронутыми.
Когда rmdir выдает ошибку «Directory not empty», он прекращает обработку каталогов, переданных ему в командной строке. Если вы попросили удалить четыре каталога, а в первом содержались файлы, rmdir выдаст вам сообщение об ошибке и больше ничего не сделает. Вы можете заставить его игнорировать эти ошибки с --ignore-fail-on-non-empty чтобы обрабатывать другие каталоги.
В следующем примере две папки были переданы в rmdir , это work/reports и work/quotes. Параметр --ignore-fail-on-non-empty включен в команду. В папке work/reports находятся файлы, поэтому rmdir не может удалить ее. Опция --ignore-fail-on-non-empty заставляет rmdir игнорировать ошибку и переходить к следующей папке, которую он должен обработать, это work/quotes. Это пустая папка, и rmdir удаляет ее.
Эта команда использовалась.
Rmdir --ignore-fail-on-non-empty work/reports /work/quotes
Вы можете использовать опцию -p (parent), чтобы удалить каталог, а также удалить его родительские каталоги. Этот прием работает, потому что rmdir начинается с целевого каталога, а затем возвращается к родительскому. Теперь этот каталог должен быть пустым, поэтому он может быть удален rmdir, и процесс повторяет шаг назад по пути, предоставленному rmdir.
В следующем примере команда, переданная в rmdir:
Rmdir -p work/invoices
Каталоги invoices и work удаляются по запросу.
Используете ли вы Bash или любую другую оболочку? Linux предоставляет гибкие и мощные команды для удаления каталогов и файлов прямо из командной строки терминала. Некоторые люди предпочитают иметь рабочий процесс, который вращается вокруг терминала. У других может не быть выбора в этом вопросе. Они могут работать на серверах без установленного графического интерфейса или в удаленном сеансе в автономной системе, такой как Raspberry Pi. Эти команды идеально подходят для этой группы людей.
Но какой бы тип рабочего процесса вы ни предпочли, эти команды очень хорошо подходят для включения в сценарии оболочки. Если сценарий запускается заданием cron , это может помочь автоматизировать рутинные служебные задачи, такие как очистка нежелательных файлов журнала. Если вы исследуете этот вариант использования, помните о силе этих команд, тщательно проверяйте все и всегда сохраняйте последнюю резервную копию.
Рекомендации помогут Вам полностью удалить папку через командную строку . В статье про , использовалась команда DEL, которая предназначена именно для файлов. В случае с папками, применимы команды RD или RMDIR.
Для достижения цели, . Введите RD /? и бегло ознакомьтесь с особенностями и параметрами команды. Здесь Вы увидите всего лишь 2 параметра:
В общем виде конструкция выглядит таким образом:
RD или RMDIR /s/q “полный путь папки”
Примечание: при применении конструкции, каталог и его содержимое полностью удалится с компьютера и Вы не найдете его в корзине. Для безопасности сделайте резервную копию папки.
У себя на компьютере я создал каталог с названием «cmd» и скопировал в него несколько объектов. Далее ввел в командную строку такую команду:
RD /s “c:\cmd”
Затем нажал Enter и клавишу Y, так как cmd сделала запрос на подтверждение удаления.
Проверив диск C, я не обнаружил каталога. Далее создал папку с именем «удалить» и также скопировал 5 файлов, но при вводе команды, убрал префикс /s. Получилось так:
RMDIR “c:\удалить”
После нажатия Enter, удаления не произошло, а в командной строке высветилось сообщение, что папка не пуста. Вывод, без параметра /s Вы сможете удалить только пустую папку, следовательно, использование без данного префикса практически бесполезно.
Если Вам лень вводить букву подтверждения (Y или N), тогда следующая конструкция для Вас. Выше упоминался префикс /q, именно он убирает надоедливый ввод букв (для доказательства смотрите скрин).
Какую команду можно использовать?
Ответ
: Чтобы удалить директорию (также известную как «папка» в ОС Windows и Mac OS), Вы можете воспользоваться следующими командами:
rmdir удаляет директорию(и) только если они не содержат файлов. Синтаксис команды довольно прост:
rmdir
directory-name
rmdir
[
option]
directory-name
Откройте терминал и введите следующую команду чтобы удалить директорию / tmp/ docs :
rmdir / tmp/ docs
Если директория содержит файлы, то команда выдаст ошибку:
$ rmdir
letters
rmdir: letters: Directory not empty
Вы можете зайти в директорию и узнать что за файлы там хранятся:
$ cd
letters
$ ls
В следующем примере, удалим директорию data, foo и bar. Структура этих директорий следующая: data содержит только директорию foo, которая, в свою очередь, содержит только директорию bar, которая пуста. Удалить сразу все эти директорию можно следующей командой:
cd
/
home/
nixcraft
rmdir
-p
data/
foo/
bar
В повседневной работе гораздо чаще приходится удалять не пустые директории, и тут на на помощь приходит команда rm . К примеру, удалить все содержимое директории letters можно командой (Осторожно! удаление без подтверждения):
$ rm -rf letters/
Чтобы получить дополнительную информацию по этим командам, Вы всегда можно воспользоваться следующей стандартной командой-справочником-подсказкой-документацией:
man
mkdir
man
rm
Казалось бы, а зачем создавать отдельную команду для удаления только пустых директорий, если можно воспользоваться rm ? Но, вдумавшись, понимаешь, что это была просто великолепная идея! Почему? Да потому что невозможно запомнить какие и где файлы хранятся, и когда нужно удалить директорию с каким-нибудь глупым или подозрительным названием (явно созданную по ошибке) можно воспользоваться безопасной командой rmdir , которая выдаст ошибку если в этой директории есть какие-то файлы. Очень удобно! Это защищает от случайного удаления.
По материалам отличного сайта cyberciti.biz . Желаю Вам хорошего дня и переходите на !