Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] поиск файла в папке, и если файл найден то переименование папки

Ответить
Настройки темы
CMD/BAT - [решено] поиск файла в папке, и если файл найден то переименование папки

Аватара для tr011_tmn

Ветеран


Автор проектов


Сообщения: 1003
Благодарности: 296

Профиль | Отправить PM | Цитировать


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

Есть у меня дерево каталогов, в этом дереве присутствуют разномастные каталоги, в одном из них лежит файл для примера 1.txt как рекурсивно пройтись по каталогам в его поиске, и если он будет обнаружен то родительский каталог этого файла переименовать?

-------
Насяльника!!!!! Джамшута адроннама коллайдер фключал, ключ павирнул и ашельбе машельбе асин, вульшарьбелеме!! и полный пистесама насяльника!
Цирк уехал ))) клоуны остались


Отправлено: 22:34, 13-07-2014

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Такой файл будет единственным в дереве? Или может оказать так:
Код: Выделить весь код
W:\01
W:\02
W:\03
W:\02\04
W:\02\1.txt
W:\02\04\1.txt
? Ибо сие в корне меняет возможные методы обхода дерева.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:16, 13-07-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 2205
Благодарности: 730

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
SetLocal EnableDelayedExpansion

:: где ищем
set in=c:\2
:: на что меняем директорию
set out=new
:: имя искомого файла
set file=DelFiles.txt

For /f "delims=" %%a In ('dir /b /s /a-d "%in%\*"') do (
if /i "%%~nxa"=="%file%" (
echo %%~dpa
set line=%%~dpa
ren "!line:~0,-1!" "%out%"
))
pause
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:20, 13-07-2014 | #3


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


sov44, почему вместо:
Код: Выделить весь код
For /f "delims=" %%a In ('dir /b /s /a-d "%in%\*"') do (
if /i "%%~nxa"=="%file%" (
не просто:
Код: Выделить весь код
… ('dir /b /s /a-d "%in%\%file%"') …
?

И нужно-таки уточнение от автора по поводу моего вопроса, иначе все вложенные каталоги после переименования будут потеряны для последующего поиска.
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:06, 14-07-2014 | #4


Аватара для tr011_tmn

Ветеран


Автор проектов


Сообщения: 1003
Благодарности: 296

Профиль | Отправить PM | Цитировать


Цитата Iska:
Такой файл будет единственным в дереве? Или может оказать так: »
да такой файл будет единственный, и в других каталогах он не встретится

-------
Насяльника!!!!! Джамшута адроннама коллайдер фключал, ключ павирнул и ашельбе машельбе асин, вульшарьбелеме!! и полный пистесама насяльника!
Цирк уехал ))) клоуны остались


Отправлено: 09:25, 14-07-2014 | #5


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


tr011_tmn, тогда пробуйте вышеприведённый код коллеги sov44.

Отправлено: 17:52, 14-07-2014 | #6


Аватара для tr011_tmn

Ветеран


Автор проектов


Сообщения: 1003
Благодарности: 296

Профиль | Отправить PM | Цитировать


sov44, Iska, спасибо большое, решение подошло как нельзя лучше.

-------
Насяльника!!!!! Джамшута адроннама коллайдер фключал, ключ павирнул и ашельбе машельбе асин, вульшарьбелеме!! и полный пистесама насяльника!
Цирк уехал ))) клоуны остались


Отправлено: 20:57, 14-07-2014 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] поиск файла в папке, и если файл найден то переименование папки

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Переименование, если файл с таким именем уже существует... Pshek Скриптовые языки администрирования Windows 15 30-07-2018 15:51
CMD/BAT - Если файл обновился то создать его копию Sasha_vinni Скриптовые языки администрирования Windows 1 09-04-2013 19:45
CMD/BAT - [решено] Если файл больше 300 мб то удалить его jannaly Скриптовые языки администрирования Windows 7 17-07-2012 15:29
VBS/WSH/JS - [решено] Поиск файла и переименование Traveller124 Скриптовые языки администрирования Windows 5 22-06-2012 15:47
.NET - Как определить что файл уже открыт, и если да, то кем? RUVATA Программирование и базы данных 0 14-01-2011 11:10




 
Переход