Командная строка – мощный инструмент для автоматизации и упрощения многих задач, которые возникают при администрировании компьютера с операционной системой Windows. В этой статье мы рассмотрим команды DEL, ERASE, RD и RMDIR. С их помощью вы сможете удалять файлы и папки прямо из командной строки.
Содержание
Удаление файлов через командную строку
Если вам нужно удалить файл через командную строку, то для этого нужно использовать команду DEL или ERASE. Эти команды являются синонимами и работают одинаково. Вы можете получить подробную информацию об этих командах, если введете их в командную строку с параметром «/?». Например, вы можете ввести «del /?» и в консоль выведется вся основная информация о команде del.
Команда DEL (или ERASE) предназначена для удаления одного или нескольких файлов и может принимать следующие параметры:
- /P – удаление с запросом подтверждения для каждого файла;
- /F – удаление файлов с атрибутом «только для чтения»;
- /S – удаление указанного файла из всех вложенных папок;
- /Q – удаление без запроса на подтверждение ;
-
/A – удаление файлов согласно их атрибутам;
- S — Системные;
- H — Скрытые;
- R – Только для чтения;
- A — Для архивирования
- Также перед атрибутами можно использовать знак минус «-», который имеет значение «НЕ». Например, «-S» означает не системный файл.
Обычно, для того чтобы воспользоваться командной DEL нужно сначала перейти в папку, в которой находится файл для удаления, и после этого выполнить команду. Для того чтобы сменить диск нужно просто ввести букву диска и двоеточие. А для перемещения по папкам нужно использовать команду «CD».
После того как вы попали в нужную папку можно приступать к удалению файлов. Для этого просто введите команду DEL и название файла.
del test.txt
Также, при необходимости вы можете удалять файлы, не перемещаясь по папкам. В этом случае нужно указывать полный путь к документу.
del e:\tmp\test.txt
Если есть необходимость выполнить запрос на подтверждение удаления каждого из файлов, то к команде DEL нужно добавить параметр «/p». В этом случае в командной строке будет появляться запрос на удаление файла и пользователю нужно будет ввести букву «Y» для подтверждения.
del /p test.txt
Нужно отметить, что при использовании параметра «/a», отвечающие за атрибуты буквы нужно вводить через двоеточие. Например, для того чтобы удалить все файлы с атрибутом «только для чтения» и с расширением «txt» нужно ввести:
del /F /A:R *.txt
Аналогичным образом к команде DEL можно добавлять и другие параметры. Комбинируя их вы сможете создавать очень мощные команды для удаления файлов через командную строку Windows. Ниже мы приводим еще несколько примеров.
Уничтожение всех файлов в корне диска D:
del D:\
Уничтожение всех файлов с расширением «txt» в корне диска D:
del D:\*.txt
Уничтожение всех файлов в папке d:\doc (документы с атрибутами будут пропущены):
del D:\doc
Уничтожение всех файлов с атрибутом «только для чтения» и расширением «txt» в папке d:\doc:
del /A:r d:\doc\*.txt
Удаление папок через командную строку
Если вам нужно удалить папку через командную строку Windows, то указанные выше команды вам не помогут. Для удаления папок существует отдельная команда RD или RMDIR (сокращение от английского Remove Directory).
Команды RD и RMDIR являются синонимами и предназначены для удаления папок. Они могу принимать следующие параметры:
- /S — удаление всего дерева каталогов, при использовании данного параметра будет удалена не только сама папка, но и все ее содержимое;
- /Q – удаление дерева папок без запроса на подтверждение;
Например, для того чтобы удалить папку достаточно ввести команду RD и название папки. Например:
rd MyFolder
Если папка содержит вложенные папки или файлы, то при ее удалении будет выведена ошибка «Папка не пуста».
Для решения этой проблемы к команде RD нужно добавить параметр «/s». В этом случае удаление проходит без проблем, но появляется запрос на подтверждение удаления. Например:
rd /s MyFolder
Для того чтобы удаление дерева папок прошло без появления запроса на подтверждение к команде нужно добавить параметр «/q». В этом случае папка удаляется без лишних вопросов. Например:
rd /s /q MyFolder
Также команда RD может принимать сразу несколько папок, для этого их нужно просто разделить пробелом. Например, чтобы сразу удалить
rd Folder1 Folder2
Если же вам нужно удалить через командную строку папку, которая сама содержит пробел, то в этом случае ее название нужно взять в двойные кавычки. Например:
rd "My Files"
Комбинируя команды DEL и RD, можно создавать мощные скрипты для очистки и удаления папок в операционной системе Windows.
Удаление файлов и папок в PowerShell
В консоли PowerShell вы можете использовать рассмотренные выше команды DEL и RD, либо «Remove-Item» — собственную команду (командлет) PowerShell. С помощью данной команды можно удалять можно удалять файлы, папки, ключи реестра, переменные и другие объекты.
Например, для того чтобы удалить файл или папку в консоли PowerShell можно использовать команду:
Remove-item file.txt Remove-item MyFolder
Действительно полезная информация
А как сделать так, чтобы из папки содержащей папки и файлы удалить только папки? Например: есть папка1, и в ней находятся папк2, папка3 и файлы файл1, файл2. Надо удалить только папка2 и папка3. Спасибо!
Это будет примерно так:
del папк**
(папк это их общее, а ** то что не будет учитывать кмд и удалит все папки с названием(в начале «папк»))
У меня такая ситуация: В 1Ске при некоторых обстоятельствах возникает ошибка, вариантом для исправления которого является удаление некоторых папок из одной папки, но дело в том, что для каждого пользователя названия этих папок разные.
Например: для пользователя РС1, надо удалить папку 0254a178-8a3d-493d-bb1c-0399c7958a7d из C:\Users\PC1\AppData\Local\1C\1cv8\,
для пользователя РС1, надо удалить папку 1109ff5d-af70-4086-a54d-3f956400b5c2 из C:\Users\PC1\AppData\Local\1C\1cv8\. Папки которые надо удалить система создает каждый раз, разными названиями. Т.е. это папки с файлами кеша.
Вопрос: Как написать команду так, чтобы из C:\Users\PC1\AppData\Local\1C\1cv8\ удалить только папки, а файлы оставить? СПАСИБО!)
Как вариант, можно сделать резервную копию файлов (с помощью команды copy), удалить всю папку всесте с файлами и вложенными папками, создать папку заново и восстановить файлы.
Например:
1. Копируем файлы из папки test в папку backup.
2. Удаляем папку test со всем содержимым.
3. Создаем папку test заново.
4. Восстановливаем файлы в папке test из резервной копии.
Не уверен, что это самый правильный способ, но это то, что пришло в голову в первую очередь.
Примерно так
Но для этого надо находиться в родительской для tmp директории, и тогда удалиться и сама папка tmp.
А этого делать не хочется, так как потом её придётся создавать.
А как составить команду удалить все папки в папке tmp, если мы уже находимся в ней.
А если, указать путь к текущей папке (точка)? Содержимое текущей папки будет удалено, а сама папка нет, так она используется.
Минус данного способа — в командной строке появится сообщение об ошибке.
Плохая статья, ибо не указано, что делать, если после применения команд /s и /q система выдаёт «Отказано в доступе». А у меня именно такая ситуация. Хоть Unlocker устанавливай из-за одной дурацкой папки…
Всех проблем в одной статье не предусмотреть. Возможно у вас нет прав на эту папку, в этом случае нужно запустить командную строку от имени администратора. Возможно папка системная, в этом случае можно попробовать сначала убрать атрибут «Системный». Для этого можно использовать команду attrib:
Если папку блокирует какая-то программа, то можно загрузиться в безопасном режиме и потом попытаться ее удалить.
а если пишет переустановка атрибутов файла не произведена?
У вас ошибка «каждого их файлов»
Замените их, на из
Спасибо!
Спасибо, исправил.
Здравствуйте!
У меня есть несколько папок, я хочу удалить первую, но не знаю ее имени. Как мне удалить эту папку?
В каком смысле «первую»? Первую по алфавиту, по размеру, по дате создания?
Папка лежит на рабочем столе, а система ее не находит, поэтому не могу удалить
Что значит система не находит? Может проблема в том, что путь к папке содержит пробел? В этом случае путь нужно заключить в двойные кавычки. Например:
Как удалить файл или папку с русскими буквами?
А как удалить папку, которая отказывает доступ к удалению?
Просто у меня нету доступа к командной строке с правами администратора
А все, исправлено у меня всё
Удаляли «мастера» файлы, в итоге остались файлы которые теперь из-за них нереально удалить, строка пишет «не удалось получить доступ к файлу» а выше пишет «отказано в доступе» как эту фигню обойти?
Можно ли удалить папки по шаблону? например, те которые начинаются с символа _ (нижнее подчеркивание)
Да
rd /s /q _*
Так не работает!
D:\Install\Game club\GameClass3\Client
как удалить D:\Install\Game club\GameClass3\Client