Форум программистов, компьютерный форум, киберфорум
Наши страницы

Batch (CMD/BAT)

Войти
Регистрация
Восстановить пароль
 
 
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
#1

Удалить все файлы, кроме одного - CMD/BAT

28.07.2016, 03:25. Просмотров 1100. Ответов 17
Метки нет (Все метки)

Здраствуйте. Может ууже создавались темы но я лишь нашел одну и то не то оказалось
Короче мне из заданной папке нужно стереть все файлы кроме одного.
Файлы которые нужно стереть неизвестно. Короче такто известно но их на столько много что легче стерать все кроме единственного с определенным расширением.
Батник должен стирать все файлы без какого либо ввода. Имя остающегося файла неизвествно но известно его расширение и известно счто такой файл будет в принципе 1 да хоть даже если 2 то их все равно нельзя удалять
Я нашел много примеров но в основном про папки. Или включая другие подпапки что мне категорически не нужно. Либо скрипт попрпосту удаляет заданные файлы но мне вот что и нужно что все файлы кроме заданного расширением и только в одной папки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.07.2016, 03:25
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Удалить все файлы, кроме одного (CMD/BAT):

Удалить из папки все файлы с расширением .txt, кроме одного - CMD/BAT
Собсна дамы и господа! Необходимло удалить из папки все файлы с расширением .txt, кроме одного - и это файл system.txt! Помогите...

Удалить все файлы, кроме указанных - CMD/BAT
Здравствуйте. Есть батник такого вида @Echo Off Set Otkuda=C:\Users\adam\Documents\pip Set NoDelete=C:\%~nx0.NoDelete ...

Копировать из текущего каталога все файлы с расширением .txt, кроме одного файла - CMD/BAT
Написать пакетный файл, который будет копировать из текущего каталога все файлы с расширением .txt, кроме одного файла, указанного в...

Удалить все файлы в папке, кроме заданных в текстовом файле - CMD/BAT
Необходимо удалить все файлы в папке кроме задых в текстовом файле.

Удалить в текущей папке все TXT-файлы, кроме перечисленных - CMD/BAT
Добрый день! Собственно в названии сам вопрос. Нашёл такой вариант решения: @echo off set "folder=папка для поиска .txt" for /f...

Копировать из текущего каталога в указанный каталог все файлы с расширением .txt кроме одного указанного - CMD/BAT
Написать командный файл, который будет копировать из текущего каталога все файлы с расширением тхт, кроме одного файла, указанного в...

17
Vergil
42 / 36 / 14
Регистрация: 11.11.2009
Сообщений: 244
28.07.2016, 06:08 #2
Задать расширение
Перебрать по одному все файлы в папке, например, через for
Если у файла расширение, как у вашего файла find или if, то пропускать, в обратном случае удалять
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 14:03  [ТС] #3
Да пробовал но все попытки заканчивались неудачей.
Может кто вышлет батник. Хотябы посмотрю что я не так делаю. Кучу вариантов перепробьывал. Самый простой
Bash
1
for %%i in "Win32\Debug\*.*" do if not %%i  == "*.ini" del %%i
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
28.07.2016, 14:09 #4
Windows Batch file
1
for /f "delims=" %%a in ('dir /b /s /a-d "путь\*" 2^>nul') do if /i not "%%~xa"==".ini" del /q "%%a"
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 14:17  [ТС] #5
Что за фигня. Путь и имя верное у найти не может хотя файлы там есть
0
Миниатюры
Удалить все файлы, кроме одного  
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
28.07.2016, 14:29 #6
Alexandr_7, посмотрите атрибуты файлов для удаления и добавьте соответствующий ключ. Например
Windows Batch file
1
for /f "delims=" %%a in ('dir /b /s /a-d "путь\*" 2^>nul') do if /i not "%%~xa"==".ini" del /f /q /ah "%%a"
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 14:39  [ТС] #7
Но тут даже включая атрибуты должен файл удалятся тоесть удалятся он должен в любом случае
Ведь файлы неизвестны. Могу лишь сказать что эти файлы создает язык прграммирования и иногда случается ошибка в результате которой нужно удалить все файлы как и временные так и после компиляции и очистеть папку TEMP
Так что вот.
0
Миниатюры
Удалить все файлы, кроме одного  
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
28.07.2016, 14:54 #8
Alexandr_7, заметил, что имена файлов у вас в кириллице. Сохраните батник в 866 кодировке. И оставьте просто del /f /q
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 15:34  [ТС] #9
Я не знаю как это сделать в блокноте.
Пробывал UTF8 юНИКОД С ЮНИКОДОМ БАТНИК ОТКРЫВАЕТСЯ И Закрывается но ничего не происходит.
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
28.07.2016, 16:01 #10
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Я не знаю как это сделать в блокноте.
Русский текст в консоли
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 17:04  [ТС] #11
Bash
1
for /f "delims=" %%a in ('dir /b /s /a-d "Win32\Debug\*.*" 2^>nul') do if /i not "%%~xa"==".ini" del /f /q "%%a"
Сделал как написоно через n++
Но проблема в том что этф функция стирает файлы не только в папке но и в подкаталогах что мне категорически не нужно!
Я вроде бы с самого начала говорил это!
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
28.07.2016, 17:09 #12
Alexandr_7, пробуйте
Windows Batch file
1
for /f "delims=" %%a in ('dir /b /a-d "Win32\Debug\*.*" 2^>nul') do if /i not "%%~xa"==".ini" del /f /q "Win32\Debug\%%a"
0
Alexandr_7
15 / 3 / 0
Регистрация: 29.12.2015
Сообщений: 795
28.07.2016, 17:17  [ТС] #13
%%a ,будет содержать полное имя файла так что не думаю что получится что либо
0
Smitis
1628 / 337 / 39
Регистрация: 15.10.2012
Сообщений: 529
01.08.2016, 19:41 #14
Можно поиграть с атрибутом "только для чтения". Допустим, оставить только *.ini
Windows Batch file
1
2
3
attrib +r *.ini
del /q *.*
attrib -r *.ini
0
alpap
1340 / 1071 / 341
Регистрация: 26.04.2015
Сообщений: 3,847
02.08.2016, 00:13 #15
Windows Batch file
1
2
3
4
@echo off
>nul chcp 1251
for /f "delims=" %%a in ('dir/a-d/b "papka"^|find/v ".ini"') do del/q "papka\%%a"
pause
0
02.08.2016, 00:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2016, 00:13
Привет! Вот еще темы с ответами:

Удалить все файлы, кроме первого, последнего и каждого 10-го между ними - CMD/BAT
Здравствуйте. Есть список каталогов на одном уровне (имена ПК), там файлы-отчеты txt одного типа разными датами. файлов порядка 100-200 в...

Копировать из текущего каталога все файлы с расширением .txt, кроме одного заданного файла, в заданный каталог - CMD/BAT
Доброго времени суток, помогите, пожалуйста с решением задачки) Написать командный файл, который будет копировать из текущего каталога...

Переместить все файлы, кроме себя - CMD/BAT
Здравствуйте! Данная программа перемещает все файлы в том числе и себя.Помогите пожалуйста модифицировать программу чтобы она не перемещала...

Как удалить все папки, кроме одной, заданной? - CMD/BAT
есть папка в которой есть несколько папок с вложенными в них папками и файлами. нужно одну конкретную папку, например "OTS" оставить ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru