Как удалить олд папку: Как удалить папку Windows.old в Windows 11

Как удалить Windows old в Windows 10

Папка Windows.old встраивается автоматически при обновлении с ранних версий операционной системы (ОС) до последних. Удаление директории позволит сэкономить место на жестком диске, но лишит возможности восстановления к исходной редакции ОС. Папка занимает много места на накопителе, обычно более 15 гигабайт. Зачастую система блокирует и скрывает доступ к каталогу с целью избежать критических повреждений при неправильном использовании.

Содержание

  1. Причины появления папки Windows.old
  2. Способы удаления
  3. Через временные файлы
  4. С помощью «Командной строки»
  5. Через «Очистку диска»
  6. Используя настройки памяти устройства
  7. Через «Планировщик заданий»
  8. Используя сторонние программы
  9. Что делать если папка Windows.old не удаляется
  10. Заключение

Причины появления папки Windows.old

Папка может появиться по трем причинам:

  1. Крупные патчи системы.
  2. Инсталляция Windows 10 поверх старой операционной системы.
  3. Переустановка ОС без форматирования носителя.

В первом случае появление Widows.old происходит путем выхода значительных обновлений внутри самой операционной системы, папка создается на случай критических сбоев для восстановления исходных данных. Во втором случае директория появляется с целью вернуть старую ОС, если не устроила новая. В третьем случае сохраняется исходная информация при переустановке с загрузочного диска или флешки без форматирования логического носителя.

Способы удаления

Существует несколько способов удалить Windows.old в Windows 10. Стандартные инструменты не позволят деинсталлировать каталог — файл считается системным. ОС запретит доступ к действиям через «Проводник».

Инструменты для избавления от Windows.old:

  • через временные файлы;
  • с помощью «Командной строки»;
  • через «Очистку диска»;
  • используя настройки памяти устройства;
  • с помощью «Планировщика заданий»;
  • используя сторонние программы.

Важно! Требуется убедиться в стабильности актуальной версии ОС. В случае выявления ошибок рекомендуется выполнить откат системы до предыдущего состояния.

Через временные файлы

С помощью параметров Windows можно удалять ненужную информацию с жесткого диска, в том числе и требуемые файлы. Необходимо:

  1. Нажать сочетание клавиш Win + I.
  2. Перейти во вкладку «Система».
  1. Слева кликнуть по пункту «Память», перейти по гиперссылке «Настроить контроль памяти или запустить его»
  1. Установить отметку «Удалить предыдущие версии Windows», нажать Очистить сейчас.

Запустится процесс очистки указанных данных, после завершения которого с системного диска будет удалена рассматриваемая директория.

С помощью «Командной строки»

С помощью «Командной строки» можно удалить ненужную директорию. Способ подходит для быстрой деинсталляции, вследствие чего освободится место на жестком диске. Нужно:

  1. Выполнить системный поиск «Командной строки», запустить от имени администратора.
  1. Ввести команду takeown /F C:\Windows.old\* /R /A.
  2. Вписать cacls C:\Windows.old\*.* /T /grant administrators:F.
  3. Завершить процесс командой rmdir /S /Q C:\Windows.old\.

После окончания выполнения действий окно консоли можно закрыть.

Через «Очистку диска»

Выполнить поставленную задачу можно через службу очистки диска, встроенную в систему. Для деинсталляции нужно:

  1. Нажать сочетание клавиш Win + R, в появившемся окне ввести cleanmgr.
  1. В «Очистке диска» найти кнопку Очистить системные файлы, кликнуть.
  1. Выбрать «Предыдущие версии установки Windows», подтвердить выбор.
  1. В предупреждающем сообщении ответить положительно.

Используя настройки памяти устройства

В ОС можно настроить автоматический контроль очистки диска от ненужных системных файлов. С помощью инструмента каталог удалится. Процесс будет проходить в автоматическом режиме через указанный интервал времени. Для очистки нужно:

  1. Открыть меню «Пуск», кликнуть по шестеренке слева или нажать Win + I.
  2. Войти в параметры «Система», перейти во вкладку «Память».
  1. Нажать по ссылке «Настроить контроль памяти или запустиь его»
  1. Выбрать периодичность.

Обратите внимание! После очистки данных рекомендуется отключить функцию автоматического удаления — папка Windows. old больше не появится.

Через «Планировщик заданий»

«Планировщик заданий» предоставляет возможность использования утилит для освобождения места на жестком диске и удаления каталога старой версии операционной системы. Программа запускает определенные скрипты в заданное время. Для деинсталляции нужно:

  1. Выполнить системный поиск «Планировщика заданий», открыть.
  1. Выбрать раздел Setup в библиотеке по пути «Microsoft» → «Windows».
  1. Нажать на SetupCleanupTask, на вкладке «Триггеры» выделить задачу и нажать кнопку Изменить.
  1. Задать параметр «Однократно» и поменять дату удаления папки Windows.old на необходимую, по умолчанию директория деинсталлируется через месяц.

Используя сторонние программы

Автоматизировать процесс можно с помощью стороннего программного обеспечения (ПО), например, CCleaner. ПО поможет деинсталлировать файлы, непригодные для пользования, но занимающие много места на жестком диске. Для выполнения задачи необходимо:

  1. Скачать приложение с официального сайта, выполнить установку.
  2. Открыть CCleaner, зайти во вкладку «Очистка».
  3. В разделе «Прочее» поставить галочку возле надписи «Старая установка Windows». Отметки с других пунктов нужно убирать.
  4. Кликнуть «Очистить», дождаться окончания процесса удаления.

Обратите внимание! После выполнения поставленной задачи инсталлированное программное обеспечение можно удалить с компьютера за ненадобностью.

Что делать если папка Windows.old не удаляется

Папка Windows.old может не удалиться по определенным причинам. Если были испробованы представленные способы, но удалось добиться лишь снижения веса директории, значит в конкретной версии операционной системы наличие вложенных файлов необходимо.

Возможно, в рабочей учетной записи отсутствуют права администратора, в таком случае нужно сменить аккаунт на компьютере.

Рекомендуется проверить систему на наличие ошибок, вредоносного программного обеспечения и исправность носителей памяти, ОЗУ. Из-за сбоя в аппаратной части способность записывать и форматировать информацию может критически замедлиться.

Заключение

Деинсталляция директории Windows.old предоставляет возможность освободить место на жестком диске. Помощь в автоматическом удалении временных файлов и папки могут оказать сторонние приложения и встроенные утилиты для планирования задач и контроля объема памяти устройства. Очищать от «мусора» рекомендуется только после факта отсутствия проблем в новой версии операционной системы.

Как удалить Windows.old

Иногда пользователи замечают, что на системном диске внезапно куда-то исчезло два десятка гигабайт свободного пространства. Это заставляет их углубиться в изучение содержимого диска C, что в подавляющем большинстве случаев приводит к обнаружению загадочной папки Windows.old, параллельно существующей вместе с обычной папкой Windows. Если предназначение папки Windows ни у кого не вызывает никаких вопросов, то вот существование Windows.old может озадачить неподготовленного к таковым сюрпризам пользователя. Часто именно эта папка является причиной исчезновения драгоценных гигабайт на вашем диске С. Давайте же попробуем разобраться, что это за папка Windows.old, можно ли удалять папку Windows.old и как это вообще сделать.

Что это за папка Windows.old

Папка Windows.old – чрезвычайно важный компонент операционной системы, напрямую связанный с системой обновления вашего компьютера. Это ваша страховка на тот случай, если во время апдейта что-то идет не так. Перед началом установки обновления Windows создает полный бекап операционной системы и помещает его в ту самую папку Windows с отметкой .old (старый – англ.). Затем уже новая операционная система перемещается путем установки обновлений в стандартную папку Windows, из которой потом запускается.

Отсюда может возникнуть резонный вопрос: зачем нужна папка Windows.old, если обновление успешно завершилось. Опять же – это ваша страховка. Часто случается так, что в новых версиях Windows (особенно в первые недели после начала рассылки обновления) существуют какие-то проблемы или баги, терпеть которые могут не все. Если вас не устраивает работа компьютера на новой версии операционной системы, Microsoft любезно дает вам возможность практически в любой момент вернуться на предыдущую версию в несколько кликов. Как это делается – тема для отдельной стати. В этой публикации мы лишь сосредоточимся на предназначении папки Windows.old и том, как от нее избавиться. Когда у вас возникает желание или необходимость сделать откат операционной системы, механизмы обновления возьмут содержимое папки Windows.old и вернут ее в папку Windows. Таким образов вы быстро и безболезненно вернетесь к предыдущей версии операционной системы.

Можно ли удалить папку Windows.old

Да, можно, но есть определенные моменты, на которые вам стоит обратить внимания. Их всего один, если быть точным.

Если вы удалите папку Windows.old, вы освободите несколько гигабайт на системном диске, но при этом вы потеряете возможность откатиться в случае возникновения неполадок. Если что-то пойдет не так и вы не сможете устранить проблему, единственным способом возвращения компьютера в рабочее состояние будет переустановка Windows 10. Грустно, но факт.

Стоит также учесть, что Windows со временем автоматически удаляет старые версии операционной системы через 10 дней после обновления.

Удаление папки Windows.old в Windows 10

Существует несколько способов удалить папку Windows.old. Сразу отметим, что вам не стоит пытаться вручную удалить папку Windows.old из Проводника Windows как какую-то обычную папку или файл. Windows защищает собственные бекапы от примитивного и несанкционированного удаления. Когда у пользователя возникает необходимость избавиться от папки Windows.old, ему надо воспользоваться специально предусмотренными для этого опциями.

Метод 1

  1. Нажмите Win + I (эта комбинация клавиш открывает Параметры) и перейдите в раздел Система – Память устройства.
  2. Нажмите на ссылку Настроить контроль памяти или запустить его.
  3. На новом окне опуститесь немного ниже и отметьте флажком пункт Удалить предыдущие версии Windows.
  4. После этого нажмите на кнопку Очистить сейчас. Windows запустит механизм очистки, после чего содержимое папки Windows.old будет удалено.
  5. Учтите, что сама папка может остаться в системе (баг это или фича – никому неизвестно), но ее содержимое будет удалено.

Кстати, если вы хотите очистить еще немного хранилища на системном диске, вернитесь обратно в Система – Память устройства и нажмите Временные файлы. На новом окне отметьте флажками пункты, которые хотите удалить, а затем щелкните Удалить файлы.

Метод 2

Этот метод предусматривает удаление папки Windows.old из раздела, в котором вы удаляли временные файлы в конце первого метода.

  1. Откройте Параметры (Win + I или другой предпочитаемый вами метод) и затем нажмите Система – Память устройства.
  2. Щелкните Временные файлы. Подождите, пока Windows просканирует временные файлы на вашем компьютере, а затем отметьте флажком пункт Предыдущие установки Windows.
  3. Нажмите Удалить файлы и подождите.

Готово, папка Windows.old успешно удалена.

Метод 3

Если первых двух методов вам показалось недостаточно или вам просто любопытно, как еще можно удалить папку Windows.old, вот вам последний метод.

Бонус: этим же методом вы можете удалить папку Windows.old на Windows 7 и Windows 8.1. На этих ОС нового приложения Параметры и Storage Sense нет, но зато есть старая-добрая утилита очистки диска.

  1. Нажмите Win + R и введите команду cleanmgr. Нажмите Enter и выберите из выпадающего меню системный диск С.
  2. Как вариант, в этот же раздел можно попасть другим способом. Откройте Проводник, щелкните по диску С правой кнопкой мыши и выберите Свойства. На вкладке Общие нажмите кнопку Очистка диска.
  3. Теперь нажмите на кнопку Очистить системные файлы. К вашему сведению: эта процедура выполняется от имени Администратора, поэтому пользователям с обычным доступом надо будет ввести пароль Администратора. В этом случае вам может пригодиться статья, рассказывающая о том, как сделать пользователя Администратором в Windows 10.
  4. Найдите в списке пункт Предыдущие установки Windows, отметьте его флажком и затем нажмите Ок. Подтвердите удаление.
  5. Подождите, пока система не удалит папку Windows.old с вашего компьютера.

Бонусный метод

Продвинутые пользователи Windows знают, что подавляющее большинство процедур в Windows можно сделать из Командной строки. Удаление папки Windows.old – не исключение. Этот способ не столь дружелюбный по отношению к обычному пользователю, но тоже рабочий. Можете запомнить его, чтобы потом впечатлить своих друзей, какой вы крутой знаток Командной строки в Windows.

  1. Нажмите Пуск, введите Командная строка. Щелкните правой кнопкой мыши по результату поиска и выберите Запуск от имени Администратора.
  2. В окно командной строки введите RD /S /Q C:\Windows.old. Нажмите Enter, после чего папка Windows.old будет удалена.

На этом все.

windows — Удалить все файлы из папки и ее подпапок

спросил

Изменено
1 год, 3 месяца назад

Просмотрено
422к раз

Я хочу удалить все файлы из структуры папок, поэтому у меня остается пустая структура папок.

Можно ли этого добиться с помощью пакетного сценария или сценария VBScript?

Я пробовал очень простую пакетную команду, но для этого требовалось, чтобы пользователь разрешил удаление каждого файла. Это не было подходящим решением, так как есть много сотен файлов, и со временем их количество будет значительно увеличиваться.

Что вы можете предложить?

  • windows
  • скрипт
  • powershell
  • пакетный файл
  • vbscript

6

Это можно сделать с помощью PowerShell:

 Get-ChildItem -Path C:\Temp -Include *.* -File -Recurse | foreach {$_.Удалить()}
 

Эта команда получает каждый дочерний элемент в $path , выполняет метод удаления для каждого из них и работает довольно быстро. Структура папок остается неизменной.

Если у вас могут быть файлы без расширения, используйте

 Get-ChildItem -Path C:\Temp -Include * -File -Recurse | foreach {$_.Удалить()}
 

вместо

.

Похоже, что параметр -File мог быть добавлен после PowerShell v2. Если это так, то

 Get-ChildItem -Path C:\Temp -Include *.* -Recurse | foreach {$_.Удалить()}
 

Это должно сработать для файлов с расширением.

Если не работает, проверьте, установлена ​​ли у вас актуальная версия Powershell

13

Короткий и понятный PowerShell. Не уверен, с какой самой низкой версией PS он будет работать.

 Remove-Item c:\Tmp\* -Recurse -Force
 

8

Вы можете сделать это с помощью команды del :

 каталог C:\folder
дель / S *
 

Переключатель /S предназначен для рекурсивного удаления только файлов.

8

Использование PowerShell:

 Get-ChildItem -Path c:\temp -Include * | удалить-элемент-recurse
 

Читая ваш исходный вопрос между строк, я могу предложить альтернативную строку кода BATCH, которую вы можете использовать. Что это будет делать при запуске, так это удалять только файлы старше 60 дней. Таким образом, вы можете поместить это в запланированное задание, и когда оно запустится, оно удалит лишние файлы, которые вам не нужны, а не сдует весь каталог. Вы можете изменить 60 на 5 дней или даже 1 день, если хотите. Это не удаляет папки.

 forfiles -p "c:\path\to\files" -d -60 -c "cmd /c del /f /q @path"
 

2

Используйте PowerShell для удаления одного файла или папки. Перед выполнением команды «Удалить» в powershell нам нужно убедиться, что вы вошли на сервер или ПК с учетной записью, которая имеет полный доступ к объектам, которые вы хотите удалить.

С примером: http://dotnet-helpers.com/powershell-demo/how-to-delete-a-folder-or-file-using-powershell/

Remove-Item -Path «C:\dotnet-helpers\DummyfiletoDelete.txt»

Приведенная выше команда выполнит и удалит файл «DummyfiletoDelete.txt», который находится в папке «C:\dotnet-helpers».

Remove-Item-Path «C:\dotnet-helpers*.*»

Remove-Item -Path «C:\dotnet-helpers*.*» -recurse

-recurse выполняет детализацию и находит гораздо больше файлов. Параметр –recurse позволит PowerShell удалять любые дочерние элементы без запроса разрешения. Кроме того, можно добавить параметр –force для удаления скрытых файлов или файлов, доступных только для чтения.

Использование команды -Force для принудительного удаления файлов

Remove-Item -Path «C:\dotnet-helpers*.*» -Force

Это самый простой способ IMO

Откройте PowerShell, перейдите в каталог ( cd ), ЗАТЕМ

 ls -Recurse * | г.м.
 

(Пуф) все пропало…

Если вы хотите удалить на основе определенного расширения

 ls -Recurse *.docx | г.м.
 

ls перечисляет каталог

-Recurse — это флаг, указывающий powershell переходить в любые подкаталоги

* говорит обо всем

*.doc все с расширением .doc

| подать вывод слева направо

пм удалить

Все остальные ответы делают это более запутанным, чем необходимо.

Попробуйте это с помощью PowerShell. В этом примере я хочу удалить все файлы . class:

 Get-ChildItem '.\ИМЯ ПАПКИ' -include *.class -recurse | foreach ($_) {удалить элемент $_.FullName}
 
  1. В проводнике Windows выберите корневой каталог, содержащий все файлы и папки.

  2. Искать *

  3. Сортировка по типу (все папки будут вверху, а все файлы внизу)

  4. Выберите все файлы и нажмите Удалить.

Это приведет к удалению всех файлов и сохранению структуры каталогов.

Удалить все файлы из текущего каталога и подкаталогов, но оставить структуру папок. Переключатель

( / Q ) предназначен для запроса пользователя, может ли он удалить

Внимание : попробуйте без / Q , чтобы убедиться, что вы не удаляете ничего ценного.

 дель /S * /Q
 

Мы можем удалить все файлы в папке и ее подпапках с помощью приведенной ниже команды.

 Get-ChildItem -Recurse -Path 'D:\Powershell Practice' |Where-Object{$_. GetType() -eq [System.IO.FileInfo]} |Remove-Item
 

Или

 Get-ChildItem -Recurse -Path 'D:\Powershell Practice' -File | Убрать предмет
 

1

 каталог C:\testx\ -Recurse -File | рд -что если
Что если: Выполнение операции «Удалить файл» на целевом «C:\testx\x.txt».
Что если: Выполнение операции «Удалить файл» на целевом «C:\testx\bla\x.txt».
 

С Powershell 5.1:


 $extensions_list = Get-ChildItem -Path 'C:\folder_path\' -Recurse
foreach ( $расширение в $extensions_list) {
    if ($extension.Attributes -не как "Каталог") {
        Удалить элемент $extension.FullName
    }
}
 

Удаляет все элементы, не относящиеся к Каталогу.

$extension.FullName = путь к элементу

$extension.Attributes = тип элемента (каталог или архив)

Пример PowerShell.

Я обнаружил, что некоторые пути работают не очень хорошо, поэтому использование -LiteralPath работает во всех случаях.

Справку по которой можно найти в документах MS для Remove-Item .

 # Чтобы удалить все файлы в папке и ее подпапках.
$subDir = "Z:\путь к\куда\"
# Удалите здесь -WhatIf и -Verbose, как только вы будете довольны результатом.
Get-ChildItem -LiteralPath $subDir -File -Recurse | Remove-Item -Подробный -WhatIf
 

Если все ваши файлы имеют расширение и ни одна из ваших папок не имеет точки, вы можете сделать следующее:

 Remove-Item C:\Test\* -Include *.* -Recurse
 

Проверьте официальную документацию, которая содержит множество примеров.

3

В дополнение к приведенным выше ответам на самом деле нет необходимости использовать Get-Childitem и передавать результат в конвейер в приведенных выше ответах, поскольку ключевое слово -Include включено в команду Remove-Item

Можно просто:

Remove-Item -Include » . » «C:\Temp» -Recurse

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.

bash — сценарий оболочки для удаления каталогов старше n дней

спросил

Изменено
3 года назад

Просмотрено
314 тысяч раз

У меня есть каталоги с именами:

 2012-12-12
2012-10-12
2012-08-08
 

Как удалить каталоги старше 10 дней с помощью сценария оболочки bash?

  • Баш
  • оболочка

3

Это сделает это рекурсивно за вас:

 find /path/to/base/dir/* -type d -ctime +10 -exec rm -rf {} \;
 

Объяснение:

  • find : команда unix для поиска файлов/каталогов/ссылок и т. д.
  • /path/to/base/dir : каталог для начала поиска.
  • -type d : найти только каталоги
  • -ctime +10 : рассматривать только те, у которых время модификации старше 10 дней
  • -exec...\; : для каждого такого найденного результата выполните следующую команду в ...
  • rm -rf {} : рекурсивно принудительно удалить каталог; часть {} — это место, где результат поиска заменяется из предыдущей части.

В качестве альтернативы используйте:

 find /path/to/base/dir/* -type d -ctime +10 | xargs rm -rf
 

Что немного эффективнее, потому что оно равно:

 rm -rf dir1 dir2 dir3 ...
 

в отличие от:

 rm -rf dir1; гм-рф дир2; рм-рф дир3; ...
 

как в методе -exec .


В современных версиях найти , можно заменить ; с + , и это будет эквивалентно вызов xargs для вас, передавая столько файлов, сколько поместится при каждом системном вызове exec:

 find .  -type d -ctime +10 -exec rm -rf {} +
 

15

Если вы хотите удалить все подкаталоги под /path/to/base , например

 /path/to/base/dir1
/путь/к/базе/dir2
/путь/к/базе/dir3
 

но вы не хотите удалять корень /path/to/base , вы должны добавить -mindepth 1 и -maxdepth 1 опции, которые будут иметь доступ только к подкаталогам под /path/to/base

-mindepth 1 исключают корень /path/to/base из совпадений.

-maxdepth 1 будет ТОЛЬКО соответствовать подкаталогам непосредственно под /path/to/base , например /path/to/base/dir1 , /path/to/base/dir2 и 9003 7 /путь /to/base/dir3 , но он не будет перечислять их подкаталоги рекурсивным образом. Таким образом, эти примеры подкаталогов не будут перечислены:

 /путь/к/базе/каталог1/каталог1
/путь/к/базе/dir2/dir1
/путь/к/базе/dir3/dir1
 

и так далее.

Итак, чтобы удалить все подкаталоги в /path/to/base , которые старше 10 дней;

 найти /путь/к/базе -mindepth 1 -maxdepth 1 -type d -ctime +10 | xargs rm -rf
 

0

find поддерживает операцию -delete , поэтому:

 find /base/dir/* -ctime +10 -delete;
 

Я думаю, есть загвоздка в том, что файлы тоже должны быть старше на 10+ дней. Не пробовал, может кто подтвердит в комментариях.

Решение, получившее наибольшее количество голосов, здесь отсутствует -maxdepth 0 , поэтому он будет вызывать rm -rf для каждого подкаталога после его удаления. Это не имеет смысла, поэтому я предлагаю:

 find /base/dir/* -maxdepth 0 -type d -ctime +10 -exec rm -rf {} \;
 

Приведенное выше решение -delete не использует -maxdepth 0 , потому что find будет жаловаться, что каталог не пуст. Вместо этого он подразумевает -depth и удаляет снизу вверх.