У меня есть код
Цитата:
@echo off
setlocal
for /f "tokens=*" %%i in (' dir /b "z:\Work\ready-profiles\*.ini" ') do call:1 "%%i"
for /f "tokens=2 delims==" %%i in (' set ini_ ') do set "file=%%i"
copy /y "z:\Work\ready-profiles\%file%.ini" "Z:\Work\old\%file%.ini"
copy /y "z:\Work\ready-profiles\%file%.conf" "Z:\Work\old\%file%.conf"
goto:eof
:1
set "ini_%random%=%~n1"
который копирует произвольные файлы (одинаково называющиеся) .ini и .conf из папки z:\Work\ready-profiles\
Хотел попросить Вас подсказать, как усложнить этот код, чтобы в папке z:\Work\ready-profiles\ еще бралась подпапка произвольная (от 1 до 6), т.е. сначала рандомно выбираем подпапку z:\Work\ready-profiles\1 или z:\Work\ready-profiles\4 (1, 2, 3, 4, 5, 6 - варианты), а уже в ней делалось действо по выбору и копированию рандомных файлов %file%.ini и %file%.conf
Спасибо большое!
CMD/BAT - Выбор произвольной папки
-
Georgio
Re: CMD/BAT - Выбор произвольной папки
Код PowerShell:
Код:
.
Код:
Код: Выделить всё
($n=gci ('Z:\Work\ready-profiles\'+(1..6|Get-Random)+'\*.ini')|Get-Random),($n -replace '\.ini$','.conf')|%{cpi $_ 'Z:\Work\old' -Force}.
-
XXXp
Re: CMD/BAT - Выбор произвольной папки
Georgio, спасибо огромное, а как совместить Ваш код с предыдущим?
-
XXXp
Re: CMD/BAT - Выбор произвольной папки
XXXp, вот на всякий случай "перевод" Вашего кода:
Код:
.
А "совмещение" -- это, как я понял, копирование одной случайной пары файлов или непосредственно из папки, или из случайной подпапки:
Код:
.
Код:
Код: Выделить всё
($m=gci 'Z_\Work\ready-profiles\*.ini'|Get-Random),($m -replace '\.ini$','.conf')|%{cpi $_ 'Z_\Work\old' -Force}.
А "совмещение" -- это, как я понял, копирование одной случайной пары файлов или непосредственно из папки, или из случайной подпапки:
Код:
Код: Выделить всё
($n=(gci 'Z_\Work\ready-profiles\*.ini'),(1..6|%{gci ('Z_\Work\ready-profiles\'+$_+'\*.ini')})|Get-Random),($n -replace '\.ini$','.conf')|%{cpi $_ 'Z_\Work\old' -Force}.
-
XXXp
Re: CMD/BAT - Выбор произвольной папки
Спасибо большое!
А как этот код перевести, когда конечное имя файла задано.
Цитата:
@echo off
setlocal
for /f "tokens=*" %%i in (' dir /b "z:\Work\ready-profiles\*.ini" ') do call:1 "%%i"
for /f "tokens=2 delims==" %%i in (' set ini_ ') do set "file=%%i"
copy /y "z:\Work\ready-profiles\%file%.ini" "c:\1.ini"
copy /y "z:\Work\ready-profiles\%file%.conf" "C:\firefox\profile\modifyheaders.conf"
goto:eof
:1
set "ini_%random%=%~n1"
А как этот код перевести, когда конечное имя файла задано.
Цитата:
@echo off
setlocal
for /f "tokens=*" %%i in (' dir /b "z:\Work\ready-profiles\*.ini" ') do call:1 "%%i"
for /f "tokens=2 delims==" %%i in (' set ini_ ') do set "file=%%i"
copy /y "z:\Work\ready-profiles\%file%.ini" "c:\1.ini"
copy /y "z:\Work\ready-profiles\%file%.conf" "C:\firefox\profile\modifyheaders.conf"
goto:eof
:1
set "ini_%random%=%~n1"
-
Georgio
Re: CMD/BAT - Выбор произвольной папки
Код:
Код: Выделить всё
cpi ($m=gci 'Z:\Work\ready-profiles\*.ini'|Get-Random) 'C:\1.ini' -Force
cpi ($m -replace '\.ini$','.conf') 'C:\firefox\profile\modifyheaders.conf' -Force-
XXXp
Re: CMD/BAT - Выбор произвольной папки
PowerShell ругается
Условие "Get Random" не распознано как командлет
и еще много чего, скопировать не получается, могу скрин вставить
Условие "Get Random" не распознано как командлет
и еще много чего, скопировать не получается, могу скрин вставить