Командная строка — удобный инструмент для быстрого и эффективного выполнения задач в Windows. Это полнофункциональный и часто недооцененный инструмент компьютерной системы. Действия в командной строке осуществляются без мышки, поэтому она идеально подходит для людей, предпочитающих работать за клавиатурой. Из этой статьи вы узнаете, что собой представляет Командная строка и как с ее помощью выполнять базовые задачи. Прочитав данную статью, вам будет намного проще выполнять базовые задачи через Командную строку.
Этот урок покажет, как удалить файл через командную строку в Windows (7, 8, XP, Vista). В этом помогут команды DEL или ERASE, которые используются тогда, когда Вы не можете обычным способом удалить файл. Для удаления папки из командной строки, DEL и ERASE не подойдут.
Естественно, для начала запустите командную строку с правами администратора. С этим действием Вы получите наилучшие результаты.
Если Вы воспользуетесь таким уроком, тогда файл будет удален сразу без отправки в корзину.
В cmd введите DEL /? и нажмите Enter, чтобы предварительно ознакомиться с параметрами команд. Если сделали правильно, Вы увидите разъяснения (скриншот ниже).
Рекомендации помогут Вам полностью удалить папку через командную строку. В статье про удаление файла из командной строки, использовалась команда DEL, которая предназначена именно для файлов. В случае с папками, применимы команды RD или RMDIR.
Для достижения цели, откройте cmd c привилегиями администратора. Введите RD /? и бегло ознакомьтесь с особенностями и параметрами команды. Здесь Вы увидите всего лишь 2 параметра:
- /s – при использовании этого префикса, удалится папка, а также все вложенные в нее элементы. Если Ваш каталог не пустой, и Вы не прописали это параметр, тогда у Вас ничего не выйдет.
- /Q – используется при удалении без подтверждения.
В общем виде конструкция выглядит таким образом:
RD или RMDIR /s/q “полный путь папки”
Примечание: при применении конструкции, каталог и его содержимое полностью удалится с компьютера и Вы не найдете его в корзине. Для безопасности сделайте резервную копию папки.
Теперь я хочу удалить (в файле .cmd) количество x самых старых папок, чтобы в папке оставалось еще 30 новых файлов.
Изменить: то, что я сейчас тестирую, это:
Сам не понял, как получилось. Старый ржавый лист железа, который когда-то служил крышей с играл мне по руке. Теперь на правой руке пальцы опухшие с порванными ранами и болит. Думаю, придётся ехать в больницу, так как раны гноятся, видимо из-за ржавчины!
Как удалить файл через cmd. exe
Для удаления файла или несколько файлов используется команда «DEL» Команду «DEL» можно применять в трёх вариантах. В зависимости от Ваших потребностей.
1) Для удаления одного файла.
2) Для удаления всех файлов с нужным расширением.
3) Для удаления всех файлов, в определённой директории.
Обо всем по порядку. Для удаления одного файла введите команду:
Файл с именем «test.txt» будет удалён после выполнения команды из корня диска «C:»
Что бы удалить все файлы из нужной вам директории с определённым расширением, например «txt» следует ввести команду таким образом:
В место имени файла нужно указать знак «*» и через точку указать нужно расширение.
Для удаления всего, что находится в директории, делаем так:
Из директории «directory» будут удалены все файлы. Как видим, прежде чем все удалится, нас просят подтвердить действия. Удалять или нет!
Что бы консоль не спрашивала, нужно удалять или нет стоит использовать ключ «/q» получится так.
Теперь консоль не будет задавать лишних вопросов и удалит все файлы сразу.
Для справки: Данную команду можно использовать со звёздочками «*» то есть можно писать так «del C:directory*.*» в таком случаи результат будет такой же, как и прежде. Все файлы будут удалены из директории «directory»
Как удалить каталог через консоль.
Для удаления каталога имеется команда «RD». Удалим ранее созданный каталог «directory»
Каталог «directory» будет удалён, только в том случаи, если он пуст. Но если каталог не пустой, и содержит другие файлы и папки удаления не произойдёт!
Что бы удалить каталог с файлами используется ключ «/S»
Теперь катало будет удалён со всем содержимым. Что бы избежать запроса подтверждения используется ключ «/q»
На этом я закончу первую часть поста.
В следующей части:
- Как переместить файл через консоль.
- Как переименовать файл из консоли.
- Как вывести содержимое файла в консоль.
- Как записать в файл результат выполнения команды.
- Как запустить файл из консоли.
Возможно, даже скорее всего напишу ещё больше и также я думаю что будет и третья (3) часть посвящённая этой теме. Боюсь, что за один, два раза не осилю столько печатать из за полученных увечий.
Удачи Вам! Буду рад видеть Вас в следующих постах!
Я хотел бы удалить все файлы и подпапки в пакетном файле в Windows 7 и сохранить верхнюю папку. В основном очистка папки. Какова инструкция командной строки для этого?
Вы можете сделать это, используя del и флаг /S (чтобы он удалил все файлы из всех подкаталогов):
del /S C:Path odirectory*
del * /S /Q
Здесь сначала он очистит все файлы во всех подкаталогах, а затем очистит все пустые подкаталоги.
Поскольку текущий рабочий каталог является родительским каталогом, т. Е. “New folder”, команда rmdir не может удалить этот каталог самостоятельно.
изменён BlueBerry – Vignesh4303
Перейдите в родительский каталог:
pushd “Parent Directory”
Удалить вложенные папки:
Вы можете использовать rmdir для удаления файлов и подпапок, например:
rmdir /s/q MyFolderPath
Тем не менее, это значительно быстрее, особенно когда в вашей структуре много подпапок для использования del перед rmdir, например:
ответ дан Einbert Alshtein
rmdir “c:pathofyourdirectory” /q /s
Не забудьте использовать кавычки, и для /q /s будут удалены все репозитории без запроса.
Вы можете сделать это быстро и легко, поместив эти три инструкции в свой файл bat:
mkdir empty_folder
robocopy /mir empty_folder “path_to_directory”
rmdir empty_folder
Если вы хотите удалить все файлы в папке, включая все подпапки, и не полагаться на некоторые условия ошибки, чтобы сохранить корневую папку нетронутой (как я видел в другом ответе), у вас может быть пакетный файл, подобный этому:
И тогда вы просто позвоните с помощью:
empty_my_folder.bat “C:whateverismy folder”
Чтобы удалить файл:
Чтобы удалить папку со всеми файлами в ней:
rmdir /s /q PATH_TO_FOLDER
Удалить все файлы из определенной папки (не удаляя саму папку) немного сложнее. del /s *.* не может удалять папки, но удаляет файлы из всех подпапок. Итак, нужны две команды:
Вы можете создать скрипт для удаления всего, что вы хотите (папка или файл), например, mydel.bat:
Несколько примеров использования:
mydel.bat “path oolder with spaces”
mydel.bat path oile_or_folder
ответ дан Maxim Suslov
Это работало лучше для меня, когда у меня были пробелы в именах папок.
Это то, что сработало для меня.
- Перейдите в папку, где вы хотите удалить файлы.
- Тип: del *
- Y для да.
- Готово
В этой статье рассказывается, как удалить файл с рабочего стола компьютера под управлением Windows с помощью командной строки.
- Выберите файл. Если вы знаете, где находится файл, перейдите к нему, открыв соответствующую папку. Например, если нужно удалить изображение или текстовый файл, скорее всего, он находится в папке «Документы», в которой по умолчанию хранятся файлы такого формата.
Если вы не знаете, где находится файл, введите его имя в строке поиска меню «Пуск», затем щелкните по нему правой кнопкой мыши и в меню выберите «Расположение файла», чтобы перейти непосредственно к файлу. - Если вы не знаете, где находится файл, введите его имя в строке поиска меню «Пуск», затем щелкните по нему правой кнопкой мыши и в меню выберите «Расположение файла», чтобы перейти непосредственно к файлу.
- Перетащите файл на рабочий стол. Так вы упростите процесс удаления, потому что отпадет необходимость переходить в соответствующий каталог в командной строке.
Исключением из этого правила является случай удаления файла из папки «System32», которая является системной папкой Windows. В этом случае оставьте файл в этой папке. - Исключением из этого правила является случай удаления файла из папки «System32», которая является системной папкой Windows. В этом случае оставьте файл в этой папке.
- Щелкните по файлу правой кнопкой мыши. Откроется выпадающее меню.
- Нажмите . Эта опция находится в нижней части открывшегося меню.
- Выясните расширение файла. Расширение файла отображается на вкладке «Общие» окна «Свойства» в строке «Тип файла». Необходимо знать расширение файла, чтобы удалить его с помощью командной строки. Наиболее распространенными расширениями являются:
.txt – текстовые файлы (созданы в Блокноте).
.docx – файлы Microsoft Word.
.jpg or .png – изображения.
.mov, .wmv, .mp4 – видеофайлы.
.mp3, .wav – аудиофайлы.
.exe – исполняемые файлы (например, установочные файлы).
.lnk – ярлыки. Удаление ярлыка не приведет к удалению соответствующего файла (программы). - .txt – текстовые файлы (созданы в Блокноте).
- .docx – файлы Microsoft Word.
- .jpg or .png – изображения.
- .mov, .wmv, .mp4 – видеофайлы.
- .mp3, .wav – аудиофайлы.
- .exe – исполняемые файлы (например, установочные файлы).
- .lnk – ярлыки. Удаление ярлыка не приведет к удалению соответствующего файла (программы).
- Запишите расширение файла. Теперь можно открыть и воспользоваться командной строкой.
- Откройте командную строку. Открыть командную строку нужно без административных прав, если только вы не собираетесь удалять файл из системной папки «System32». Открыть командную строку можно по-разному в зависимости от версии Windows:
Зажмите клавишу , нажмите , а затем над кнопкой «Пуск» нажмите «Командная строка».Щелкните правой кнопкой мыши по кнопке «Пуск» (в левом нижнем углу экрана) и в меню выберите «Командная строка».В строке поиска меню «Пуск» введите «Командная строка» (без кавычек; в Windows 8 переместите курсор мыши в правый верхний угол экрана и щелкните по значку в виде лупы) и нажмите «Командная строка», когда появится соответствующий значок.В меню «Пуск» нажмите «Выполнить», введите «cmd» (без кавычек) и нажмите «OK». - Зажмите клавишу , нажмите , а затем над кнопкой «Пуск» нажмите «Командная строка».
- Щелкните правой кнопкой мыши по кнопке «Пуск» (в левом нижнем углу экрана) и в меню выберите «Командная строка».
- В строке поиска меню «Пуск» введите «Командная строка» (без кавычек; в Windows 8 переместите курсор мыши в правый верхний угол экрана и щелкните по значку в виде лупы) и нажмите «Командная строка», когда появится соответствующий значок.
- В меню «Пуск» нажмите «Выполнить», введите «cmd» (без кавычек) и нажмите «OK».
- Введите cd desktop и нажмите . Так в командой строке вы перейдете в каталог, соответствующий рабочему столу.
Если нужно, воспользуйтесь другими методами, чтобы изменить каталог в командной строке.Если открыть командную строку в качестве администратора, вы автоматически переместитесь в каталог (папку) «System32». Поэтому не открывайте командную строку с административными правами, только если удаляемый файл не находится в папке «System32». - Если нужно, воспользуйтесь другими методами, чтобы изменить каталог в командной строке.
- Если открыть командную строку в качестве администратора, вы автоматически переместитесь в каталог (папку) «System32». Поэтому не открывайте командную строку с административными правами, только если удаляемый файл не находится в папке «System32».
- Например, если нужно удалить изображение под названием «icecream», введите icecream.png, а если текстовый файл под названием «notes», введите notes.txt (и так далее).Если в имени файла есть пробелы, имя и расширение файла нужно заключить в кавычки: “I like turtles.jpg” вместо I_like_turtles.jpg.Чтобы удалить с рабочего стола все файлы с одинаковым расширением (например, все текстовые файлы), введите *.расширение, где вместо «расширение» подставьте соответствующее расширение (например, *.txt).
- Например, если нужно удалить изображение под названием «icecream», введите icecream.png, а если текстовый файл под названием «notes», введите notes.txt (и так далее).
- Если в имени файла есть пробелы, имя и расширение файла нужно заключить в кавычки: “I like turtles.jpg” вместо I_like_turtles.jpg.
- Чтобы удалить с рабочего стола все файлы с одинаковым расширением (например, все текстовые файлы), введите *.расширение, где вместо «расширение» подставьте соответствующее расширение (например, *.txt).
- Нажмите . В командной строке появится новая пустая строка.
Команда «del» удаляет файлы непосредственно с жесткого диска, то есть не нужно повторно удалять их из Корзины. - Команда «del» удаляет файлы непосредственно с жесткого диска, то есть не нужно повторно удалять их из Корзины.
- Перемещать файлы.
- Переименовывать файлы.
- Выводить содержимое файлов в консоль.
- Записывать в файл (txt) результат выполнения команды.
Как всегда, все команды будут представлены Вашему вниманию в сопровождении коротких, но ясных описаниях, а так же будут прилагаться «Пошаговые» скриншоты.
Первым делом, я расскажу, как переместить файл из одной директории в другую.
Как переместить файл через консоль?
Для перемещения файлов используется команда под названием «MOVE». Что бы переместить файл из корня диска «C: Move.txt» в папку, в моём случаи это «С:Test_Move» пишем в консоль:
Результат выполнения команды. Файл «Move.txt» был перемещён в папку «Test_Move»
Если Вам нужно переместить все файлы с конкретным расширением, то в этом случаи стоит писать так:
Для примера я создал 3 файла «Move_1.txt, Move_2.txt и Move_3.txt» Как видно из скриншота выше, все три файла были перемещённых. В этом можно убедится не закрывая консоль.
Для проверки используем команду «DIR»
С перемещением файлов на этом все. Но, если в каталоге куда нужно переместить файл уже есть такой? То пользователь получит сообщения, в котором его спросят подтвердить, перезаписать файл или нет.
Если ввести символ «Y» то файл будет перезаписан. При этом содержимое уже имеющегося файла в каталоге «C:Test_Move» будут потеряны.
Если ввести символ «N» файл не будет перемещён.
Если ввести «ALL» то будут перемещены и перезаписаны все файлы с конкретным расширением. При этом, также, содержимое файлов в директории «C:Test_Move» будут потеряны.
Примечание: За место «ALL» можно просто ввести букву «А» результат будет додже.
Что бы отключить предупреждения используется ключик «/Y»
Теперь все файлы будет перемещены и перезаписаны без всяких предупреждений. Будьте внимательны, можно потерять важную информацию.
Как переименовать файл через cmd. exe?
Для того, чтобы переименовать существующий файл используется команда «RENAME» Я создал файл с именем «test.txt» в корне диска «С:» что бы его переименовать, скажем в «NEW_Name.txt» пишем в консоли.
Файл «test.txt» будет переименован.
Примечание: Команду «RENAME» можно писать короче, просто «REN» от этого результат не изменится.
Можно сменить расширения у всех файлов в каталоге, например с «txt» на «cmd». Для этого делаем так:
Теперь уже в знакомой нам папке «Test_Move» все 3(три) файла приобретут расширение «cmd» за место «txt»
Как вывести содержимое файла в консоль?
Если появилась необходимость просмотреть содержимое файла прямо в cmd. Для этого пользуемся командой «TYPE» Я создал файл и написал в нём адрес своего блога. Теперь попробуем просмотреть данный файл из консоли, не запуская его обычном, привычным образом.
В общем все просто. Но как быть с файлами большего размера, где много информации? В этак случаи содержимое файла нужно выводить с паузой, чтобы просмотреть его полностью.
Для этого пишем так:
Для примера взял текст с первого попавшегося забугорного сайта.
Как записать в файл результат выполнения команды?
Для примера запишем в файл результат команды «DIR» В консоль пишем:
Если Вам понадобится записать результат команды «DIR» ещё раз, то файл «Save.txt» будет перезаписан и ранние содержимое файла будет удалено!
Теперь файл не будет перезаписан, в него просто добавится новый результат в конец файла.
На этом я пожалуй закончу пост, и отправлюсь праздновать первый день рождения сына, ему сегодня исполняется один годик!!!
Спасибо за внимание!
The Windows Command Processor cmd.exe has two internal commands for deletion of files and folders:
- The command DEL is for the deletion of files with usage help output on running in a Windows command prompt window either help del or del /?.
- The command RMDIR or with shorter name RD is for removal of directories with usage help output on running in a Windows command prompt window either help rmdir or rmdir /? or help rd or rd /?.
Deletion of all *. svn files in an entire folder tree
The usage of option /A to match all files independent on the file attributes replaces the implicit default /A-H to ignore hidden files. So even files with hidden attribute are deleted by this command because of using the option /A. Files matched by wildcard pattern *.svn with hidden attribute set are ignored on not using the option /A.
The option /F forces a deletion of files with file extension .svn which have the read-only attribute set. There would be output the error message Access is denied. if a *.svn file has the read-only attribute set and the option /F is not used on running the command DEL.
The option /S results in searching not only in the specified directory, but also in all its subdirectories including those with hidden attribute set even on not using option /A for files of which long or short 8.3 name is matched by the wildcard pattern *.svn.
There are deleted also hard links and symbolic links matched by the wildcard pattern *.svn on using this command, but not the files linked to on having a file name not ending with .svn or being in a different directory tree.
Deletion of all *. svn folders in an entire folder tree
There is executed on more cmd.exe in background with option /c and the command line specified between ‘ as additional arguments to run in background the Windows Command Processor internal command DIR to search
- and in all its subdirectories because of option /S
- for just directories because of using the option /AD which includes also junctions and symbolic directory links
- matching the wildcard pattern *.svn.
The output list of directory names with their full paths to handle STDOUT is captured by cmd.exe processing the batch file and processed by FOR after started cmd.exe closed itself.
The FOR /F option delims= defines an empty list of string delimiters which results in each entire directory name is assigned completely one after the other to the specified loop variable I.
The command RD is executed to delete quietly because of option /Q the directory with all files and all subdirectories because of option /S.
There are deleted also junctions (soft links) and symbolic directory links matched by the wildcard pattern *.svn on using this command, but not the directories linked to on having a directory name not ending with .svn or being in a different directory tree.
Other useful information regarding to deletion of files and folders
- del /?
- dir /?
- for /?
- rd /?
Run mklink /? for help on how to create file and directory links explained very well by MKLink.
Присвоить переменной значение пробел
set “charlist= “
Извлечение подстроки с конца строки
(часто этот прием используют для удаления окаймляющих кавычек)
Удаление подстроки в строке
В данном примере из строки будет удалена подстрока “кожа “
Удаление всех пробелов в строке
Как вариант предыдущего примера
Замена подстроки в строке
Глядя на этот пример не составит трудности написать процедуру
обратного преобразования.
——————————————————————————————————-
ЗАМЕНА ОДНОЙ ПОДСТРОКИ НА ДРУГУЮ В ФАЙЛЕ
Такую задачу можно решить без использования сторонних программ, только средствами bat !
Ниже приведен пример с использованием локальной процедуры txtrepl
Вывод на экран, в файл текста без перевода строки
Использование этого приема в сочетании с символом backspace (код 08)
позволяет сделать вывод на экран изменяемого текста и как вариант – “вращающейся палки”.
Вычисление длины строковой переменной
В bat/cmd командах нет функции, позволяющей вычислять длину строковой переменной.
А такая задача возникает не так уж и редко. Однако средств командного языка
достаточно, для того что бы решить такую задачу,
не прибегая к использованию специальных программ.
Рассмотрим несколько вариантов решения данной задачи:
:var_count2
set /a %2 =0
set var=%~1
:startvarcount
if not defined var exit /b
set var=%var:~1%
set /a %2+=1
goto startvarcount
exit /b
Еще один вариант вычисления длины строковой переменной:
:StringLen
:: ———————–
:: Нахождение длины строки
:: ———————–
:: %1 – текстовая строка
:: ———————–
Set $StringLen=0
Set $StringBuf=%~1
If “”==”%~1” GoTo :EOF
:StringLenLoop
Set /A $StringLen+=1
Call Set $StringChr=%%$StringBuf:~%$StringLen%%%
If “”==”%$StringChr%” GOTO :EOF
GoTo :StringLenLoop
Еще один способ определения длины строки, как ни странно – достаточно быстрый:
Ну и, наконец, решение, поразившее меня своей математической лаконичностью:
Для себя я так же использую метод половинного деления
для нахождения количества символов в строке.
Эта процедура менее изящна, и, возможно, потребует несколько большего времени
для вычислений, чем приведенная выше, но, на мой взгляд, она понятнее.
(В этом месте надо было похвалить себя еще, но что-то не нашлось достойных эпитетов)
Привожу на всякий случай и эту процедуру ))
Получение подстроки.
Если смещение начала подстроки и ее длина являются константами –
здесь все достаточно просто и аналогичный пример рассматривался выше:
Прошу прощения, если в качестве значения переменной str я опубликовал чей-то пароль )).
Если же одна или обе эти величины – переменные, то решение будет не столь простое.
Здесь встретиться возможно не совсем обычное применение команды CALL.
Немного глубже об этом на странице Полезное
в разделе Особенности использования команды CALL. Там же рассмотрен и этот пример.
Итак, рассмотрим возможные решения:
Или как вариант предыдущего
Удаление ведущих и замыкающих пробелов.
:ALLTRIM
:: ———————–
:: Krasner B.
:: ———————–
:: %1 – var with txt string
:: ———————–
SetLocal EnableDelayedExpansion
set /a firstnoblank=-1
set /a lastnoblank=0
set /a curpos=1
set “str=Q!%1!”
:StringLenLoop
set SUBD=!str:~%curpos%,1!
if “!SUBD!” == “” GoTo :formrez
if NOT “!SUBD!” == ” ” (
if !firstnoblank! == -1 set firstnoblank=!curpos!
set lastnoblank=!curpos!
)
set /a curpos = !curpos!+1
GoTo :StringLenLoop
:formrez
set /a n1=!firstnoblank!-1
set /a n2=!lastnoblank!-!firstnoblank!+1
if !firstnoblank! == -1 (set “rez=”) else (set rez=!%1:~%n1%,%n2%!)
ENDLOCAL & SET %~1=%rez%
exit /b 0
)
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать
раздел форума
этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен
здесь
The simple single command line solution which of course can be also used in a batch file:
This command line contains three commands executed one after the other.
The first command PUSHD pushes current directory path on stack and next makes %PathToFolder% the current directory for running command process.
This works also for UNC paths by default because of command extensions are enabled by default and in this case PUSHD creates a temporary drive letter that points to that specified network resource and then changes the current drive and directory, using the newly defined drive letter.
The system cannot find the path specified.
The next command RD is executed only if changing current directory for current command process to specified directory was successful, i.e. the specified directory exists at all.
The command RD with the options /Q and /S removes a directory quietly with all subdirectories even if the specified directory contains files or folders with hidden attribute or with read-only attribute set. The system attribute does never prevent deletion of a file or folder.
Not deleted are:
- Folders used as the current directory for any running process. The entire folder tree to such a folder cannot be deleted if a folder is used as the current directory for any running process.
- Files currently opened by any running process with file access permissions set on file open to prevent deletion of the file while opened by the running application/process. Such an opened file prevents also the deletion of entire folder tree to the opened file.
The first reason for not deleting a folder is used by this command line to delete all files and subfolders of the specified folder, but not the folder itself. The folder is made temporarily the current directory for running command process which prevents the deletion of the folder itself. Of course this results in output of an error message by command RD:
The process cannot access the file because it is being used by another process.
File is the wrong term here as in reality the folder is being used by another process, the current command process which executed command RD. Well, in reality a folder is for the file system a special file with file attribute directory which explains this error message. But I don’t want to go too deep into file system management.
The third command, POPD, is executed independently of the exit value of command RD.
POPD pops the directory path pushed by PUSHD from the stack and changes the current directory for running the command process to this directory, i.e. restores the initial current directory. POPD deletes the temporary drive letter created by PUSHD in case of a UNC folder path.
Note: POPD can silently fail to restore the initial current directory in case of the initial current directory was a subdirectory of the directory to clean which does not exist anymore. In this special case %PathToFolder% remains the current directory. So it is advisable to run the command line above not from a subdirectory of %PathToFolder%.
- pushd /?
- popd /?
- rd /?
Single line with multiple commands using Windows batch file explains the operators && and & used here.
Next let us look on the batch file solution using the command DEL to delete files in %PathToFolder% and FOR and RD to delete the subfolders in %PathToFolder%.
The batch file first makes sure that environment variable PathToFolder is really defined with a folder path without double quotes and without a backslash at the end. The backslash at the end would not be a problem, but double quotes in a folder path could be problematic because of the value of PathToFolder is concatenated with other strings during batch file execution.
Important are the two lines:
The command DEL is used to delete all files in the specified directory.
- The option /A is necessary to process really all files including files with the hidden attribute which DEL would ignore without using option /A.
- The option /F is necessary to force deletion of files with the read-only attribute set.
FOR processes the captured output written to handle STDOUT of a started command process which are the names of the subdirectories without path and never enclosed in double quotes.
FOR with option /F ignores empty lines which don’t occur here as DIR with option /B does not output empty lines.
FOR would split up the line into substrings using space and horizontal tab as delimiters and would assign only the first space/tab delimited string to specified loop variable I. This splitting behavior is not wanted here because of a directory name can contain one or more spaces. Therefore delims= is used to define an empty list of delimiters to disable the line splitting behavior and get assigned to the loop variable, I, always the complete directory name.
Command FOR runs the command RD for each directory name without a path which is the reason why on the RD command line the folder path must be specified once again which is concatenated with the subfolder name.
- del /?
- dir /?
- endlocal /?
- for /?
- goto /?
- if /?
- rd /?
- rem /?
- set /?
- setlocal /?
Что вам понадобится
- Компьютер, работающий на операционной системе Windows
- Клавиатура
Использование cmd при загрузке Windows
Иногда возникает необходимость зайти в cmd до запуска системы. Связано с тем, что вредоносная программа блокирует удачный вход или загрузочный сектор системы поврежден, тогда Вам помогут следующие шаги:
- Откройте командную строку при загрузке Windows
- В cmd введите DiskPart и нажмите Enter
- Далее потребуется написать list volume и еще раз нажать энтер (см. скриншот ниже). Это позволит увидеть букву диска, в котором нужно удалить файл.
- После получения сведений, напечатайте exit и кликните Enter.
Теперь смело вводите варианты команд удаления, которые расписаны ниже.
Такими действиями Вы удалите любой файл на компьютере посредством командной строки.
Шаги
- Проверьте содержимое папки. Чтобы проверить содержимое текущей папки, воспользуйтесь командой dir. Просто введите dir и нажмите Enter, после чего в Командной строке отобразится список содержимого папки.
- Очистите данные с экрана. Для этого воспользуйтесь командой cls. Просто введите cls и нажмите , чтобы очистить содержимое с экрана. Как показано на примере выше, на экране останется лишь командная строка.
- Проверьте содержимое папки. Теперь проверьте содержимое папки с помощью команды dir. Как показано на примере сверху, папка wikihow теперь содержит два новых файла: newFile и newFile1.
- Удалите папку с файлами. Чтобы удалить папку, в которой содержатся файлы, воспользуйтесь измененной командой rmdir. Введите команду rmdir /s wikihow. Введите rmdir /s wikihow и нажмите Enter. Появится окно подтверждения удаления папки, введите Y или N. Введите Y, чтобы подтвердить удаление, или N, чтобы отменить его. Когда вы введете Y, папка и все ее содержимое будут удалены из системы.
Советы
- Команды можно вводить как заглавными, так и строчными буквами.
- Используйте команду CLS для регулярной очистки экрана. Так вам будет намного удобнее работать.
Предупреждения
В таком случае Вы должны подтвердить или опровергнуть действия буквами (Y – да / N – нет), чтобы удалить все файлы в основном каталоге и вложенных папках.
Для подтверждения воспользуйтесь таким синтаксисом:
DEL /F /S /Q /A “Полный путь к папке*”
Если нужно удалить все файлы на диске D из папки «в корзину», в которой множество других каталогов и файлов, я применю команду:
DEL /F /S /Q /A “D:в корзину*”
Для того чтобы удалить файл из командной строки с подтверждением, к параметрам прибавляется /P и выглядит так:
DEL /P /F /S /A “D:эксперимент*”
Возможно, удалять все файлы с заданным расширением, тогда команда примет вид:
DEL /F /S /Q /A “Полный путь к папке*.расширение”
Особенно полезно, когда много однотипных ненужных элементов, которые не вариант перебирать вручную, а можно просто удалить пачкой из cmd.
При правильном подходе, можно удалить файл через командную строку, за несколько секунд. Надеюсь, рекомендации пошли на пользу. Если Вас интересует cmd, советую ознакомиться с материалом, как запустить диспетчер задач через командную строку, который будет не менее интересен.
- Удаление системного файла может привести к краху системы.
- Файлы, которые удаляются через командную строку, в Корзину не попадают.
Об этой статье
У себя на компьютере я создал каталог с названием «cmd» и скопировал в него несколько объектов. Далее ввел в командную строку такую команду:
RD /s “c:cmd”
Затем нажал Enter и клавишу Y, так как cmd сделала запрос на подтверждение удаления.
Проверив диск C, я не обнаружил каталога. Далее создал папку с именем «удалить» и также скопировал 5 файлов, но при вводе команды, убрал префикс /s. Получилось так:
После нажатия Enter, удаления не произошло, а в командной строке высветилось сообщение, что папка не пуста. Вывод, без параметра /s Вы сможете удалить только пустую папку, следовательно, использование без данного префикса практически бесполезно.
Если Вам лень вводить букву подтверждения (Y или N), тогда следующая конструкция для Вас. Выше упоминался префикс /q, именно он убирает надоедливый ввод букв (для доказательства смотрите скрин).
Вот и все, такими действиями Вы без проблем сможете удалить папку из командной строки, используя вовсе не сложный синтаксис. Со знаниями cmd ваши любые задумки превратятся в реальность, с которыми Вы даже выключите компьютер из командной строки и сделаете многое другое.
Для удаления конкретного элемента Вам надо знать его имя и расширение. В противном случае возрастает вероятность удалить не то, что надо!
В cmd введите следующую команду и нажмите энтер:
DEL /F /S /Q /A “Полный путь элемента с расширением”
Например, если я хочу, удалить пакетный файл с именем «delete» и с расширением (.bat), расположенный на диске C в папке «мусор», нужно ввести команду:
DEL /F /S /Q /A “C:мусорdelete.bat”