![]() |
Невыполняеться команда cd и старт в скрипте после popd
Здравствуйте, подскажите как заставить выполняться команду cd и start для запуска другого батника хотя бы через 1.lnk , после команды popd
@echo off set $SRC=D:\в го set $DST=D:\в_М pushd "%$SRC%" for /f "tokens=*" %%i in ('dir /b *.txt') do ( for /f "tokens=1" %%j in ("%%~ti") do if "%%j"=="%date%" ( copy "%%i" "%$DST%\" cry "%$DST%\%%i" )) popd cd "D:\test" start 1.lnk |
dark-------13, попробуйте вместо команды CD использовать PUSHD, либо запускать CD с ключом /D
Код:
cd /d "D:\test" |
Нет не работает почему-то именно с приведенным выше скриптом --- что же в нем такого особенного ..... ?
|
тогда может просто
"D:\Test\1.lnk" |
Не не работает наверное проблема в проге кот-я выполняет шифрование в консоли. Может от этого и не работают команды идущие после.
|
а если паузу вставить пока шифрование выполняется
|
Нет, все равно не выполняется
|
dark-------13,
А d:\test существует? У меня только одно предположение -- указаны не правильные пути Попробуйте: Код:
start "" "d:\test\1.lnk" |
d:\test существует другие батники работают как положено, этот не хочет после шифрования выполнять последующие команды - вообще ни какие ... шифрование делается сторонней программой от фирмы лан крипто , вот мне кажется это все из за нее хотя на 100 процентов не уверен т.к. в батниках не шарю.
|
ОС у вас какая?
|
XP pro corp sp2 32 битная
|
в предыдущей теме:
В третью очередь выполняем отправку файлов по почте может для этого использовать планировщик заданий |
Если по другому ни как, то его и буду использовать.
|
dark-------13,
Тогда попробуйте запускать cry с помощью start: Код:
start /b /w cry "" "%$DST%\%%i" Код:
start /b /w "" cmd /c cry "%$DST%\%%i" |
да cry - консольная команда для программы шифрования, попробую и отпишусь сработало или нет
|
Нет все таки не работает
|
Файлы копируются? Шифруются? Еще раз проверьте пути в батнике. "D:\в го" и "D:\в_М" -- это так называются папки?
|
dark-------13, чтобы не гадать:
- заменить 1-ю строку батника "@echo off" -> "@echo on" - запустить батник из CMD-консоли с выводом в лог: Код:
BATNIK.CMD >BATNIK.LOG 2>&1 |
Вот лог
D:\test>set $SRC=D:\в го D:\test>set $DST=D:\в_М D:\test>pushd "D:\в го" D:\в го>for /F "tokens=*" %i in ('dir /b *.txt') do (for /F "tokens=1" %j in ("%~ti") do if "%j" == "13.05.2011" ( copy "%i" "D:\в_М\" cry "D:\в_М\%i" ) ) D:\в го>(for /F "tokens=1" %j in ("13.05.2011 08:12") do if "%j" == "13.05.2011" ( copy "Текстовый документ (2).txt" "D:\в_М\" cry "D:\в_М\Текстовый документ (2).txt" ) ) D:\в го>if "13.05.2011" == "13.05.2011" ( copy "Текстовый документ (2).txt" "D:\в_М\" cry "D:\в_М\Текстовый документ (2).txt" ) Скопировано файлов: 1. Encryption/Decryption program Encrypting: D:\т_╠юёътє\╥хъёЄют√щ фюъєьхэЄ (2).txt %100, done D:\в го>(for /F "tokens=1" %j in ("13.05.2011 08:12") do if "%j" == "13.05.2011" ( copy "Текстовый документ.txt" "D:\в_М\" cry "D:\в_М\Текстовый документ.txt" ) ) D:\в го>if "13.05.2011" == "13.05.2011" ( copy "Текстовый документ.txt" "D:\в_М\" cry "D:\в_М\Текстовый документ.txt" ) Заменить D:\в_М\Текстовый документ.txt [Yes (да)/No (нет)/All (все)]: Скопировано файлов: 1. Encrypting: D:\т_╠юёътє\╥хъёЄют√щ фюъєьхэЄ.txt %100, done |
dark-------13, странный этот CRY - после него не выполняется ни одна команда, его можно найти?
|
amel27, в интернете не удастся найти описание команды cry т.к. эта специфическая команда выполняется в консоли только на машине с установленной консольной программой шифрования причем в инструкции к программе нет ни намека на то как после выполнения шифрования выполнять другие команды.
P.S.... счастье уже в том, что работает шифрование всех файлов в папке, хотя об этом в консольной инструкции (-help) тоже не было написано ... наверное это особенность данной консольной программы, что после шифрования нельзя запустить другие команды (хотя странно это) ... попробую посмотреть еще раз правильность расположения скобок может в них проблема после вставки второго и третьего скриптов, может случиться чудо и все заработает ...... ?! |
dark-------13, проверить можно без цикла:
Код:
cry "D:\в_М\Текстовый документ.txt" Код:
call cry "%$DST%\%%i" Код:
cmd /c call cry "%$DST%\%%i" |
Спасибо вам amel27 все заработало при использовании call cry "%$DST%\%%i"
|
Время: 17:52. |
Время: 17:52.
© OSzone.net 2001-