Удаляем различные файлы и папки через Windows PowerShell
Если вы не можете удалить какие-то файлы или папки со своего компьютера под управлением ОС Windows, то мы рекомендуем вам воспользоваться такое полезной штуковиной, как PowerShell. При помощи данного средства вы без каких-либо проблем можете удалить из системы файлы и папки, которые сложно или и вовсе нельзя удалить традиционными методами.
PowerShell для удаления файлов и папок
Чтобы удалить из системы файлы и папки с помощью Windows PowerShell, вам нужно придерживаться следующих шагов:
- откройте Windows PowerShell;
- найдите нужный файл или папку;
- выполните команду по удалению объекта.
Верно, все настолько просто. Однако давайте все-таки пройдемся по процессу удаления через PowerShell немного поподробней.
Удаление одного файла через PowerShell
Прежде все, вам необходимо открыть перед собой окошко PowerShell. Для этого нажмите на клавиатуре комбинацию Windows+S, а затем пропишите запрос PowerShell. Нажмите правой кнопкой на найденный результат и выберите «Запуск от имени администратора».
Чтобы удалить какой-то определенный файл, вам нужно выполнить следующую команду:
В общем, довольно простая команда. Давайте предположим, что у вас на Рабочем столе есть папка под названием «Testfiles», а внутри нее лежит файл Testfiles.jpg, который вам нужно удалить. В таком случае вышеуказанная команда будет выглядеть следующим образом:
Remove-item C:\Users\[имя пользователя]\Desktop\Testfiles\Testfiles.jpg

Обязательно не забываем прописывать расширение файла под удаление, иначе PowerShell просто не разберет команду — файл останется на компьютере и вы увидите ошибку в окошке средства.
Удаление одной папки через PowerShell
Хотите удалить какую-то конкретную папку в своей ОС Windows? Тогда вам нужно использовать точно такую же команду, что и ранее.
Давайте предположим, что у вас на Рабочем столе есть папка под названием «Testfiles» — вы хотите от нее избавиться. В таком случае команда примет следующий вид:
Remove-item C:\Users\[имя пользователя]\Desktop\Testfiles

Если папка пустая, то она будет удалена сразу же. Тем не менее при наличии хоть каких-то файлов в ней вам придется нажать на кнопки Y и Enter, чтобы подтвердить их удаление. В окошке PowerShell будут подсказки начнет того, за что отвечают какие кнопки.
Удаление нескольких файлов через PowerShell
Если вы хотите избавиться сразу от нескольких файлов через PowerShell, то вам потребуется использовать уже несколько иную команду. Выглядеть она будет следующим образом:
Remove-item [путь к файлу], [путь к файлу1], [путь к файлу2]
Верно, вам придется вводить местоположение для каждого файла, который вы хотите удалить из своей системы. Предположим, что у вас на Рабочем столе есть файл AnotherTest.txt, а в папке Downloads — AnotherTest1.jpg. Что делать, если их оба нужно удалить? В таком случае команда для PowerShell будет выглядеть следующим образом:
Remove-item C:\Users\[имя пользователя]\Desktop\AnotherTest.txt, C:\Users\[имя пользователя]\Downloads\AnotherTest1.jpg

Удаление нескольких папок через PowerShell
Команда для удаления нескольких папок мало чем отличается от команды, предназначенной для удаления нескольких файлов. Используя прошлые примеры, команда в PowerShell для нескольких папок будет выглядеть следующим образом:
Remove-item C:\Users\[имя пользователя]\Desktop\AnotherTest, C:\Users\[имя пользователя]\Downloads\AnotherTest1

Опять-таки, если в этих папках будут располагаться какие-то файлы, то вам потребуется подтвердить их удаление в окне PowerShell, нажав Y и Enter. Кроме того, стоит отметить, что файлы и папки, удаленные подобным образом, не попадают в Корзину на Рабочем столе, а сразу же удаляются из системы.
Проверка наличия файлов в папке через PowerShell
Если вы не можете открыть папку, но хотите знать, что в ней находится, то можете воспользоваться следующей командой:
Например, если вы хотите заглянуть внутрь папки «AnotherTest2», располагающейся на Рабочем столе, то команда будет выглядеть вот так:
Get-ChildItem C:\Users\[имя пользователя]\Desktop\AnotherTest2
Задействовав данную команду, вы увидите несколько колонок, в которых будет содержаться полезная информация касательно файлов внутри нужной вам папки. Последняя колонка (по умолчанию) будет отвечать за название файлов. Так вы будете знать, стоит ли удалять эту папку или нет.
Проверка последнего изменения и времени создания через PowerShell
Если вы хотите понять, когда был создан и изменен какой-то объект (папка или файл) в вашей системе, то вам нужно выполнить в PowerShell следующую команду:
Get-ChildItem C:\Users\[имя пользователя]\Desktop\AnotherTest2 | Select-Object FullName, LastWriteTime, CreationTime

Принудительное удаление объекта через PowerShell
У вас не получится использовать вышеуказанные команды для удаления скрытых файлов и файлов с атрибутом только для чтения. Если вы попытаетесь это сделать, то в окошке PowerShell вас встретит ошибка. Тем не менее вы можете принудительно избавиться от тех или иных файлов/папок, задействовав параметр -force. Предположим, что у вас на Рабочем столе есть папка AnotherTest3 со скрытыми файлами внутри и вы хотите избавиться от нее. Для удаления этой папки вам нужно выполнить в PowerShell следующую команду:
Remove-item C:\Users\[имя пользователя]\Desktop\AnotherTest3 -force

Как и всегда, при желании удалить два или больше объектов вам понадобится нажать Y и Enter в окошке PowerShell, чтобы подтвердить свои намерения.
Удаление файлов/папок без подтверждения через PowerShell
Кстати, говоря о подтверждения об удалении, не хотите постоянно заниматься ими? Тогда вы можете пропустить эти запросы, применив к команде на удаления особый параметр. Такая команда будет выглядеть следующим образом:
Remove-item C:\Users\[имя пользователя]\Desktop\AnotherTest3 -recurse

После ввода этой команды все указанные файлы и папки будут сразу же удалены с вашего компьютера — подтверждать ничего не нужно.
Исключение из команды на удаление в PowerShell определенных файлов
Давайте представим, что у вас есть несколько файлов с различными расширениями, например, TXT, PNG, DOCX, PDF и так далее. Вы хотите удалить всё, за исключением файлов с расширением TXT. В таком случае вам нужно задействовать вместе с соответствующей командой параметр -exclude. Вот что у вас должно получиться:
Remove-Item –path C:\Users\[имя пользователя]\Desktop\AnotherTest3* -exclude *.txt

Как вы уже могли догадаться, из папки AnotherTest3 будут удалены абсолютно все объекты, за исключением текстовых файлов. Очень удобная команда для очистки какой-то папки, в которой намешано очень много разных файлов, и вам нужно отфильтровать ее, избавившись от всего ненужного.
Как удалить папку с подпапками с помощью командной строки в Windows 10

Вы можете удалить папку с вложенными папками и файлами с помощью команд, но вам нужно знать правильный инструмент, который будет выполнять эту работу. В Windows 10 , когда вам нужно удалить файл или папку с помощью командного терминала, первое, что приходит на ум, — это команда del , но вы быстро обнаружите, что удалить папки и подпапки не получится, потому что инструмент не работает. предназначен только для работы с файлами.
Если вы хотите удалить папки с содержимым, инструмент командной строки будет зависеть от используемого вами терминала. Если вы используете командную строку, rmdir (удалить каталог) — это инструмент, который вы хотите использовать. С другой стороны, если вы используете PowerShell, вы хотите использовать именно этот командлет Remove-Item .
В этом руководстве вы узнаете два разных способа быстрого удаления папок с подпапками с помощью командной строки и PowerShell.
Удалите папки с подпапками с помощью командной строки
Чтобы удалить папку с подпапками с помощью командной строки, выполните следующие действия:
Откройте Пуск в Windows 10.
Найдите командную строку , щелкните правой кнопкой мыши верхний результат и выберите параметр «Запуск от имени администратора».
Введите следующую команду, чтобы удалить пустую папку, и нажмите Enter :
В команде замените PATH\TO\FOLDER-NAME на путь к папке и имя папки, которую вы хотите удалить.
В этом примере удаляется папка «files»:

Введите следующую команду, чтобы удалить папку и подпапки с содержимым, и нажмите Enter:
В этом примере удаляются папка, подпапки и файлы «files»:

Введите следующую команду, чтобы удалить папку с содержимым рекурсивно без запроса подтверждения, и нажмите Enter.
В этом примере удаляются папка, подпапки и файлы «files» без запроса подтверждения:

После того, как вы выполните эти шаги, папка и ее содержимое будут удалены из Windows 10.
Параметр /s удаляет папку и ее содержимое в приведенной выше команде, но запрашивает у пользователя подтверждение. Параметр /q игнорирует приглашение и рекурсивно удаляет папку.
Удалите папки с подпапками с помощью PowerShell
Чтобы рекурсивно удалить всю папку с помощью команды PowerShell, выполните следующие действия:
Найдите PowerShell, щелкните правой кнопкой мыши верхний результат и выберите параметр «Запуск от имени администратора».
Введите следующую команду, чтобы удалить пустую папку, и нажмите Enter :
В команде замените PATH\TO\FOLDER-NAME на путь к папке и имя папки, которую вы хотите удалить.
В этом примере удаляется папка «files»:

Введите следующую команду, чтобы удалить пустую папку, и нажмите Enter :
В этом примере удаляется папка «files»:

После того, как вы выполните эти шаги, папка, подпапки и файлы будут удалены с компьютера с запросом или без него, в зависимости от используемой вами команды.
Эта опция -Recurse сообщает команде, что вы хотите удалить папку и ее содержимое без подтверждения. Опция -Force не требуется, но он позволяет удалить из специальных предметов, в том числе только для чтения или скрытых файлов.
How to quietly remove a directory with content in PowerShell
Using PowerShell, is it possible to remove some directory that contains files without prompting to confirm action?
![]()
![]()
16 Answers 16
or, with shorter version
The Recurse parameter in this cmdlet does not work properly
The command to workaround is
And then delete the folder itself
This worked for me:
Thus the folder is removed with all files in there and it is not producing error if folder path doesn’t exists.
2018 Update
In the current version of PowerShell (tested with v5.1 on Windows 10 and Windows 11 in 2023) one can use the simpler Unix syntax rm -R .\DirName to silently delete the directory .\DirName with all subdirectories and files it may contain. In fact many common Unix commands work in the same way in PowerShell as in a Linux command line.
One can also clean up a folder, but not the folder itself, using rm -R .\DirName\* (noted by Jeff in the comments).
PowerShell Delete Folder

PowerShell folder delete operation is to remove the folder from the specified location, whether its local path or the shared path using the cmdlet Remove-Item or other .Net approach, which performs to delete the folders or the subfolders and their contents and uses the specific switches to deal with the different types of the folder attributes like Read-only, hidden, etc to remove them.
Syntax of PowerShell Delete Folder
PowerShell uses various methods to delete the folders from the Windows operating system.
Hadoop, Data Science, Statistics & others
1. PowerShell Remove-Item Method
Syntax:
[-Path] <String[]>
[-Filter <String>] [-Include <String[]>] [-Exclude <String[]>] [-Recurse] [-Force] [-Credential <PSCredential>] [-WhatIf] [-Confirm] [-Stream <String[]>] [<CommonParameters>]
-LiteralPath <String[]>
[-Filter <String>] [-Include <String[]>] [-Exclude <String[]>] [-Recurse] [-Force] [-Credential <PSCredential>] [-WhatIf] [-Confirm] [-Stream <String[]>] [<CommonParameters>]
From the above sets, you can use the combination of one only. You can’t use -Path and -LiteralPath both in the same command.
2. Command Prompt
- Using rmdir command
- Using del
3. FileSystem Object Method
Using the FileSystem Object Method. We can create a file system object and use the DeleteFolder method.
object.DeleteFolder folderspec, [ force ]
4. Using .Net Class Approach
How to Delete Folders in the PowerShell?
As shown in the syntax, PowerShell uses various methods like Native command Remove-Item, cmd commands rmdir and del, File System Object method, and .Net approach to delete the files from the folder.
Window System folder has various attributes associated with it like Read-Only, Hidden, Archive, etc, and to delete them we may need the various parameters to pass in the cmdlet.
Examples to Implement of PowerShell Delete Folder
Below we discuss examples of PowerShell Delete Folder:
Example #1
Remove-Item to delete the folder with Subfolders and files
Consider we have a folder stored at the location C:\temp\Test\ and we need to delete that folder using the Remove-Item command. The folder contains the below items.
Command:
Output:

To remove the items,
Remove-Item C:\Temp\Test\ -Verbose
Once you run this command, it will ask for confirmation.

You can press ‘Yes’ every time or ‘Yes to All’ to confirm all the files and folders.
This prompt is generated because the Test folder contains the subfolders and files, use the -Recurse Parameter to delete all the inside files and folders and -Force parameter to delete them forcefully.
Remove-Item C:\Temp\Test\ -Recurse -Force -Verbose
Output:

Example #2
Use -WhatIF parameter With Remove-Item to avert wrong folder deletion. We can use -WhatIf parameter that shows which files and folders will get deleted to avert any wrong folder deletion. See the example below.
Remove-Item C:\Temp\Test\ -Recurse -Force -WhatIf -Verbose
Output:
![]()
If you have permission to delete the remote folder then you can provide the shared path of the folder there. For example,
Remove-Item ‘\\Computer1\C$\Temp\Test\’ -Recurse -Force -WhatIf -Verbose
The above command will delete the C:\temp\Test folder on the remote computer Computer1.
Example #3
Use Remove-Item as the pipeline. We can retrieve the files and folder content with the Get-ChildItem and Remove-Item to pipeline the output of the first command to remove the folder.
Get-ChildItem C:\Temp\Test\ | Remove-Item -Recurse -Force -Verbose
The problem with this approach is that it deletes the content of the folder but not the folder itself. You need to add more logic to delete but if you want to delete the specific subfolder inside the parent folder then this method is useful that we will see in the example8.
Example #4
Using cmd commands to delete the folder.
- Using del
When we use the Del command it only deletes the inside files and folders and but leaves the original folder empty.
When you run this command to delete the test folder content, it will prompt for deletion.

To delete the subfolders, files including read-only, forcefully use the below command.
c:\>del c:\Temp\Test /s /q /f
Output:

- Use the rmdir to delete the folder instead of the del
when you run the above command, you will get the message as below because the directory contains the subfolders and files.

Use the below command to delete the specified folder, subfolders, and files in quiet mode.
c:\>rmdir C:\Temp\Test /s /q
Example #5
Using File System Object method. We can also delete the folder using the ComObject FileSystemObject as shown below.
$obj = New-Object -ComObject Scripting.FileSystemObject
$obj.DeleteFolder(«C:\Temp\Test»)
Example #6
Using .Net Class method. We can use the .Net class System.IO.Directory with the Delete() method to delete the folder.
PS C:\> [System.IO.Directory]::Delete(«C:\Temp\Test»)
When you run the above command, it throws an exception that the directory is not empty because the above command is meant to delete the empty directory.
![]()
So to delete the folder, add the second parameter $true for deleting the folder which is not empty.
Example #7
Using PowerShell DSC to delete the folder. Using the declarative method DSC to delete the folder.
Configuration FolderDelete <
Node Localhost <
File TestFolderDelete <
DestinationPath = ‘C:\Temp\Test’
Type = ‘Directory’
Ensure = ‘Absent’
Force = $true
>
>
>
FolderDelete -OutputPath C:\Temp\FolderDelete\ -Verbose
Start-DscConfiguration -Path C:\Temp\FolderDelete -Wait -Force -Verbose
Output:

The above command will store the configuration in C:\temp\FolderDelete, and make sure that the path exists before you run the script and it will generate the MOF file.
You can also provide the remote nodes in the Node section like
Example #8
Delete the hidden folders using PowerShell. To remove the hidden folders we first need to retrieve the hidden folder using Get-ChildItem.
Get-ChildItem C:\Temp\Test\ -Hidden
Output:

We will append Remove-Item as a Pipeline to delete that hidden folder.
Get-ChildItem C:\Temp\Test\ -Hidden | Remove-Item -Force -Recurse -Verbose
Output:

Conclusion
Windows File Explorer is used to interact with the file system files and folders but for the various reasons we need to delete the folder when we write a script or for the regular maintenance of the system we need to delete the folders to free up the extra space, we can use the methods described in this article.
Recommended Articles
This is a guide to PowerShell Delete Folder. Here we discuss a brief overview on the PowerShell Delete Folder, its syntax, methods and its Examples along with Code Implementation. You may also have a look at the following articles to learn more–