Команда для удаления файлов с исключением по тексту в имени: как сохранить нужные файлы

### Зачем нужно удалить файлы с сохранением определенных?

В процессе работы с большим количеством файлов часто возникает необходимость в их упорядочивании. К примеру, если у вас есть каталог с 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, вы сможете эффективно управлять своими данными. Не забудьте сохранять резервные копии на случай непредвиденных сбоев в процессе удаления!

Источник

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *