Delete files from command line
Deleting files is one of the frequently done operation from Windows command prompt. This post explains how to use ‘del’ command from CMD for different use cases like deleting a single file, deleting files in bulk using wild cards etc. Before we start to look at the syntax, note that the command works only for files and can’t handle folders.
How to delete a file
Run del command with the name of the file to be deleted, you are done!
You do not see message after running the command if the file is deleted successfully. Error message is shown only when something goes wrong.
Delete files in bulk
Del command recognizes wildcard(*) and so can be used to delete files in bulk from CMD. Some examples below.
To delete all the files in current folder
To delete all the files with ‘log’ extension
Delete all files having the prefix ‘abc’
Delete all files having ‘PIC’ somewhere in the file name.
The above are the basic use cases of del command. Continue to read below for non trivial use cases.
Delete multiple files
‘Del’ command can accept multiple files as argument
Delete Read only files
We can’t delete a read-only file using simple‘del’ command. We get access denied error in this scenario.
A read-only file can be deleted by adding /F flag.
Alternatively, we can use the below command too
Is there any batch command to delete all zero byte sized files from cmd.
There is a way to remove folders from the commandline, use “RD” (remove directory), and it has a couple of silent switches, “RD /S /Q C:/Directory” will remove C:/Directory silently, I use this all the time. I think that the directory path has to be in quotations if it contains any spaces.
UAC might want to fight over deleting files, in that case, the command “takeown” to give you ownership of the file first, should get around that.
Sometimes we get an error when we try to delete a File or a folder for no reason , but of course there is a reason.We have many damage file or blocked files.Do not worry if we want to remove the error files or too long path files from our system,here I suggest a smooth way.So use “Long path tool” software and keep yourself.
Well done, I used this when del *1*.*
Will keep this in my reference book. Thanks a lot!
Is there a way to exclude filenames matching a pattern from a delete? For example, I want to delete all files except those whose names are like *xyz*
I am trying to delete csv files in DOS that have a date suffix of earlier
than 2 months ago. I need to do this dynamically, from a batch file.
Is this possible ? Many thanks.
Bethany
I want to delete a file from all the user’s profiles using cmd.
The file is on the desktop.
Name of the file-Hello My Name
I’m writing del %PUBLIC%\Desktop\Hello*My*Name.pdf,but that doesnt seem to work.
I also tried del %PUBLIC%\Desktop\*Hello* but that didnt work too.
Any help is appreciated
c. Using the for loop create 5 text files which start from letter a (ex: a1, a2, a3, a4, a5).
can you help me
create 5 files like this command.
for /l %a in (1 1 5) do mkdir File%a.
Как удалить файл или папку через командную строку Windows
Командная строка – мощный инструмент для автоматизации и упрощения многих задач, которые возникают при администрировании компьютера с операционной системой Windows. В этой статье мы рассмотрим команды DEL, ERASE, RD и RMDIR. С их помощью вы сможете удалять файлы и папки прямо из командной строки.
Удаление файлов через командную строку
Если вам нужно удалить файл через командную строку, то для этого нужно использовать команду DEL или ERASE . Эти команды являются синонимами и работают одинаково. Вы можете получить подробную информацию об этих командах, если введете их в командную строку с параметром « /? ». Например, вы можете ввести « del /? » и в консоль выведется вся основная информация о команде del .
Команда DEL (или ERASE ) предназначена для удаления одного или нескольких файлов и может принимать следующие параметры:
- /P – удаление с запросом подтверждения для каждого файла;
- /F – удаление файлов с атрибутом «только для чтения»;
- /S – удаление указанного файла из всех вложенных папок;
- /Q – удаление без запроса на подтверждение ;
- S — Системные;
- H — Скрытые;
- R – Только для чтения;
- A — Для архивирования
- Также перед атрибутами можно использовать знак минус «-», который имеет значение «НЕ». Например, «-S» означает не системный файл.
Обычно, для того чтобы воспользоваться командной DEL нужно сначала перейти в папку, в которой находится файл для удаления, и после этого выполнить команду. Для того чтобы сменить диск нужно просто ввести букву диска и двоеточие. А для перемещения по папкам нужно использовать команду « CD ».
После того как вы попали в нужную папку можно приступать к удалению файлов. Для этого просто введите команду DEL и название файла.
Также, при необходимости вы можете удалять файлы, не перемещаясь по папкам. В этом случае нужно указывать полный путь к документу.
Если есть необходимость выполнить запрос на подтверждение удаления каждого их файлов, то к команде DEL нужно добавить параметр « /p ». В этом случае в командной строке будет появляться запрос на удаление файла и пользователю нужно будет ввести букву «Y» для подтверждения.
Нужно отметить, что при использовании параметра «/a», отвечающие за атрибуты буквы нужно вводить через двоеточие. Например, для того чтобы удалить все файлы с атрибутом «только для чтения» и с расширением «txt» нужно ввести команду « del /F /A:R *.txt ».
Аналогичным образом к команде DEL можно добавлять и другие параметры. Комбинируя их вы сможете создавать очень мощные команды для удаления файлов через командную строку Windows. Ниже мы приводим еще несколько примеров:
- del D:\ — уничтожение всех файлов в корне диска D;
- del D:\*.txt – уничтожение всех файлов с расширением txt в корне диска D;
- del D:\doc – уничтожение всех файлов в папке d:\doc (документы с атрибутами будут пропущены);
- del /A:r d:\doc\*.txt – уничтожение всех файлов с атрибутом «только для чтения» и расширением «txt» в папке d:\doc;
Удаление папок через командную строку
Если вам нужно удалить папку через командную строку Windows, то указанные выше команды вам не помогут. Для удаления папок существует отдельная команда RD или RMDIR (сокращение от английского Remove Directory).
Команды RD и RMDIR являются синонимами и предназначены для удаления папок. Они могу принимать следующие параметры:
- /S — удаление всего дерева каталогов, при использовании данного параметра будет удалена не только сама папка, но и все ее содержимое;
- /Q – удаление дерева папок без запроса на подтверждение;
Например, для того чтобы удалить папку достаточно ввести команду RD и название папки.
Если папка содержит вложенные папки или файлы, то при ее удалении будет выведена ошибка».
Для решения этой проблемы к команде RD нужно добавить параметр « /s ». В этом случае удаление проходит без проблем, но появляется запрос на подтверждение удаления.
Для того чтобы удаление дерева папок прошло без появления запроса на подтверждение к команде нужно добавить параметр « /q ». В этом случае папка удаляется без лишних вопросов.
Также команда RD может принимать сразу несколько папок, для этого их нужно просто разделить пробелом. Например, если выполнить « rd 111 222 », то за один раз можно удалить папки с названиями « 111 » и « 222 ».
Если же вам нужно удалить через командную строку папку, которая сама содержит пробел, то в этом случае ее название нужно взять в двойные кавычки.
Комбинируя команды DEL и RD , можно создавать мощные скрипты для очистки и удаления папок в операционной системе Windows.
del del
Удаляет один или несколько файлов. Deletes one or more files. Эта команда выполняет те же действия, что и команда Erase . This command performs the same actions as the erase command.
Команда Del также может запускаться из консоли восстановления Windows с использованием различных параметров. The del command can also run from the Windows Recovery Console, using different parameters. Дополнительные сведения см. в разделе Среда восстановления Windows (WinRE). For more information, see Windows Recovery Environment (WinRE).
Если удалить файл с диска с помощью Del , вы не сможете получить его. If you use del to delete a file from your disk, you can’t retrieve it.
Синтаксис Syntax
Параметры Parameters
Параметр Parameter | Описание Description |
---|---|
Указывает список из одного или нескольких файлов или каталогов. Specifies a list of one or more files or directories. Для удаления нескольких файлов можно использовать подстановочные знаки. Wildcards may be used to delete multiple files. Если указан каталог, все файлы в каталоге будут удалены. If a directory is specified, all files within the directory will be deleted. | |
/p /p | Запрашивает подтверждение перед удалением указанного файла. Prompts for confirmation before deleting the specified file. |
/f /f | Принудительное удаление файлов, которые доступны только для чтения. Forces deletion of read-only files. |
/s /s | Удаляет указанные файлы из текущего каталога и всех подкаталогов. Deletes specified files from the current directory and all subdirectories. Отображает имена файлов при их удалении. Displays the names of the files as they are being deleted. |
/q /q | Задает тихий режим. Specifies quiet mode. Подтверждение удаления не запрашивается. You are not prompted for delete confirmation. |
/a [:] /a[:] | Удаляет файлы на основе следующих атрибутов файлов: Deletes files based on the following file attributes:
. . |
/? /? | Отображение справки в командной строке. Displays help at the command prompt. |
Примечания Remarks
При использовании del /p команды вы увидите следующее сообщение: If you use the del /p command, you’ll see the following message:
FileName, Delete (Y/N)?
Чтобы подтвердить удаление, нажмите клавишу Y. Чтобы отменить удаление и отобразить следующее имя файла (если указана группа файлов), нажмите клавишу N. Чтобы закрыть команду Del , нажмите клавиши CTRL + C. To confirm the deletion, press Y. To cancel the deletion and to display the next file name (if you specified a group of files), press N. To stop the del command, press CTRL+C.
Если вы отключаете расширение команды, параметр /s отображает имена всех файлов, которые не были найдены, а не отображает имена удаляемых файлов. If you disable command extension, the /s parameter will display the names of any files that weren’t found ,instead of displaying the names of files that are being deleted.
Если указать определенные папки в параметре, все включаемые файлы также будут удалены. If you specify specific folders in the parameter, all of the included files will also be deleted. Например, если нужно удалить все файлы в папке \ворк , введите: For example, if you want to delete all of the files in the \work folder, type:
Можно использовать подстановочные знаки (* и ?) для удаления нескольких файлов за раз. You can use wildcards (* and ?) to delete more than one file at a time. Однако во избежание непреднамеренного удаления файлов следует использовать подстановочные знаки с осторожностью. However, to avoid deleting files unintentionally, you should use wildcards cautiously. Например, если ввести следующую команду: For example, if you type the following command:
Команда Del выводит следующее сообщение: The del command displays the following prompt:
Чтобы удалить все файлы в текущем каталоге, нажмите клавишу Y и нажмите клавишу ВВОД. To delete all of the files in the current directory, press Y and then press ENTER. Чтобы отменить удаление, нажмите клавишу N и нажмите клавишу ВВОД. To cancel the deletion, press N and then press ENTER.
Прежде чем использовать подстановочные знаки с командой Del , используйте те же подстановочные знаки с командой dir , чтобы получить список всех файлов, которые будут удалены. Before you use wildcard characters with the del command, use the same wildcard characters with the dir command to list all the files that will be deleted.
Примеры Examples
Чтобы удалить все файлы в папке с именем Test на диске C, введите следующую команду: To delete all the files in a folder named Test on drive C, type either of the following:
Чтобы удалить все файлы с расширением bat из текущего каталога, введите: To delete all files with the .bat file name extension from the current directory, type:
Чтобы удалить все файлы только для чтения в текущем каталоге, введите: To delete all read-only files in the current directory, type: