### Зачем нужно удалить файлы с сохранением определенных?
В процессе работы с большим количеством файлов часто возникает необходимость в их упорядочивании. К примеру, если у вас есть каталог с PDF-документами, может потребоваться удалить некоторые из них, сохранив лишь те, что имеют определенную структуру в названии. В этой статье мы рассмотрим, как удалить все файлы с расширением PDF, за исключением тех, что содержат «_sign» в названии, и каким образом это сделать с помощью командных файлов.
### Как удалить ненужные PDF-файлы
Предположим, у вас есть следующие файлы в папке `D:\cert`:
«`
20241220cert.pdf
20241220cert_sign.pdf
20241221cert.pdf
20241221cert_sign.pdf
20241222cert.pdf
20241222cert_sign.pdf
«`
Хотите удалить все файлы с расширением `.pdf`, но оставить `_sign.pdf`? Вы можете это сделать с помощью простого скрипта в формате `.CMD` или `.BAT`.
«`bat
@echo off
for /F %%g in (‘dir /s /b *.pdf’) do call :sub %%g
goto :eof
:sub
set filename=%1
set extension=%filename:~-9%
if [%extension%] NEQ [_sign.pdf] del %filename%
exit /b
«`
Этот скрипт будет проходить по всем файлам и удалять те, которые не содержат `_sign` в названии.
### Использование PowerShell для более эффективного удаления
Если вы предпочитаете использовать PowerShell, это можно сделать даже проще. Вот команда, которая удалит все файлы PDF, кроме тех, что имеют в названии `_sign`:
«`powershell
Get-ChildItem -Recurse *.pdf | Where-Object {$_.Name -NotLike «*_sign*»} | Remove-Item
«`
PowerShell предлагает более мощные средства работы со строками и позволяет выполнять команды в однострочном формате.
### Альтернативный способ удаления файлов
Если вы не хотите использовать скрипты, есть другой простой способ. Вы можете переместить файлы, которые хотите сохранить, в отдельную папку и затем удалить остальные. Ниже представлен набор команд, который выполняет эту задачу:
«`bat
mkdir xtemp
move *_sign.pdf xtemp\
del *.pdf
move xtemp\*.* .
rmdir xtemp
«`
Данные команды выполняют следующие действия:
1. Создают новую директорию с именем `xtemp`.
2. Перемещают нужные файлы в этот каталог.
3. Удаляют все остальные файлы PDF.
4. Возвращают сохраненные файлы обратно в изначальный каталог.
5. Удаляют временную директорию `xtemp`.
### Важные рекомендации при выполнении команд
Не забывайте, что скрипты и команды могут быть потенциально опасны. Перед выполнением любых действий рекомендуется протестировать команды на копии каталогов или создать резервную копию данных. Это поможет избежать нежелательных потерь файлов, если что-то пойдет не так.
### Заключение
Удаление ненужных файлов может значительно упростить вашу работу и освободить место на диске. Используя предложенные методы на базе командных файлов и PowerShell, вы сможете эффективно управлять своими данными. Не забудьте сохранять резервные копии на случай непредвиденных сбоев в процессе удаления!
Источник