Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Как найти папку по половине названия (http://forum.oszone.net/showthread.php?t=287149)

Gisender 28-08-2014 15:00 2395344

Как найти папку по половине названия
 
Здравствуйте,нужна помощь,как найти папку зная только половину ее названия т.е первая половина не известная и состоит из 8 символов,а дальше идет такое название .Default Main,сам вопрос в том что как зайти в эту папку зная только 2 часть ее названия,после того как можно зайти заменить файл с название Remember.inf

megaloman 28-08-2014 16:15 2395386

Цитата:

как найти папку зная только половину ее названия ... как зайти в эту папку зная только 2 часть ее названия
Код:

@Echo Off
cls

FOR /D /R "D:\Kuku" %%i IN ("*.Default Main") DO (
        Echo %%i
        Cd /d %%i
        Dir *.*
)

Цитата:

как можно зайти заменить файл с название Remember.inf
Объясните, КАК Вы собираетесь его заменить и насколько принципиально, чтобы первая часть названия папки состояла из 8 символов.

Georgio 28-08-2014 16:24 2395390

Код:

@echo off

set "directory_for_search=D:\Test"
set "mask=*.Default Main"
set "file_to_copy=E:\Remember.inf"

for /f "delims=" %%i in ('
 dir /ad/b/s "%directory_for_search%\%mask%"^| findstr /rc:"\\........\%mask:~1%$"
') do (
 start "" explorer "%%i"
 >nul timeout /t 5
 start "" cmd /c "copy "%file_to_copy%" "%%i"& >nul timeout /t 5"
 )

exit /b


Gisender 28-08-2014 16:57 2395409

Спасибо,а можно сделать так что бы копировался не 1 ,а 2 файла,да первый файл просто по пути *.Default Main\Remember.ini ,а второй *.Default Main\Redist\SettingsManager.ini
И да как можно убрать открытие найденной папки,не нужно что бы выскакивала в проводнике

Georgio 28-08-2014 17:41 2395426

Код:

@echo off

set "directory_for_search=D:\Test"
set "mask=*.Default Main"

set "file_to_copy_1=E:\Remember.ini"
set "destination_folder_1=."

set "file_to_copy_2=E:\SettingsManager.ini"
set "destination_folder_2=Redist"

for /f "delims=" %%i in ('
 dir /ad/b/s "%directory_for_search%\%mask%"^| findstr /rc:"\\........\%mask:~1%$"
') do (
 copy "%file_to_copy_1%" "%%i\%destination_folder_1%"
 copy "%file_to_copy_2%" "%%i\%destination_folder_2%"
 )

>nul timeout /t 5
exit /b


Цитата:

Цитата Gisender
а лучше вместо копирования создавался с текстом »

Приведите нужный текст для обоих файлов.

Gisender 28-08-2014 17:53 2395432

Цитата:

Цитата Georgio
Приведите нужный текст для обоих файлов. »

Да я так подумал,не стоит тексе,лучше просто копирование

Gisender 04-01-2015 11:20 2451655

Здравствуйте давно не заходил,нужна помощь к вашему батнику ниже,нужно кое что дописать,а именно что бы в начале перед копированием создавалась папка в этой директориии "set "destination_folder_1=."" и удалялся с этой же директории файл с именем prefs.js,а уже после начиналось копирование


Цитата:

Цитата Georgio
@echo off
set "directory_for_search=D:\Test"
set "mask=*.Default Main"
set "file_to_copy_1=E:\Remember.ini"
set "destination_folder_1=."
set "file_to_copy_2=E:\SettingsManager.ini"
set "destination_folder_2=Redist"
for /f "delims=" %%i in ('
dir /ad/b/s "%directory_for_search%\%mask%"^| findstr /rc:"\\........\%mask:~1%$"
') do (
copy "%file_to_copy_1%" "%%i\%destination_folder_1%"
copy "%file_to_copy_2%" "%%i\%destination_folder_2%"
)
>nul timeout /t 5
exit /b »



Время: 20:54.

Время: 20:54.
© OSzone.net 2001-