Как удалить содержимое в каталоге, не удаляя сам каталог?Командная оболочка или Powershell - PullRequest
0 голосов
/ 01 октября 2018
cd C:\ProgramData\Microsoft\Group Policy\History
>del *

Это то, что я устал использовать для удаления содержимого в папке «История».При попытке сохранить каталог истории

Есть 6 файлов, которые я хотел бы удалить, но имена файлов слишком длинные.Мне нужно сделать это несколько раз && имена файлов меняются.

Со временем я превращу это в скрипт.

Ответы [ 4 ]

0 голосов
/ 01 октября 2018

Простое cmd / batch решение

pushd "C:\ProgramData\Microsoft\Group Policy\History" && ( rmdir . /s /q 2>nul & popd )

Просто измените текущий активный каталог на указанный (pushd) и, если эта команда не завершилась неудачей (&& оператор условного выполнения), затем удалитетекущая папка и все ее содержимое (rd) и возврат к предыдущему активному каталогу (popd)

Обратите внимание, что команда rd не сможет удалить текущий активный каталог (причинасначала перейти на него) и перенаправление ошибок на поток nul, чтобы избежать сбоя при попытке удалить его.

0 голосов
/ 01 октября 2018

В PowerShell:

Remove-Item 'C:\ProgramData\Microsoft\Group Policy\History\*' -Recurse -Force

В CMD:

del /q "C:\ProgramData\Microsoft\Group Policy\History\*"
for /d %d in ("C:\ProgramData\Microsoft\Group Policy\History\*") do @rmdir /s /q "%~fd"

del /s /q недостаточно в CMD, поскольку он удаляет только файлы, а не папки.

0 голосов
/ 01 октября 2018

Каталоги без символа . не будут удалены с помощью *.*.Вместо этого используйте *.Возможно, вам потребуется запустить от имени администратора.

Если вы уверены, что правильные элементы будут удалены, удалите WhatIf из командлета Remove-Item.

Remove-Item -Path "$Env:ProgramData\Microsoft\Group Policy\History\*" -Recurse -WhatIf
0 голосов
/ 01 октября 2018

Командная оболочка:

PROMPT> cd C: \ ProgramData \ Microsoft \ Групповая политика \ История PROMPT> del . / s / q

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...