Показать полную графическую версию : [решено] Невыполняеться команда cd и старт в скрипте после popd
dark-------13
12-05-2011, 11:46
Здравствуйте, подскажите как заставить выполняться команду 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 с ключом /Dcd /d "D:\test"
dark-------13
12-05-2011, 13:25
Нет не работает почему-то именно с приведенным выше скриптом --- что же в нем такого особенного ..... ?
тогда может просто
"D:\Test\1.lnk"
dark-------13
12-05-2011, 14:11
Не не работает наверное проблема в проге кот-я выполняет шифрование в консоли. Может от этого и не работают команды идущие после.
а если паузу вставить пока шифрование выполняется
dark-------13
12-05-2011, 14:43
Нет, все равно не выполняется
Foreigner
12-05-2011, 17:13
dark-------13,
А d:\test существует?
У меня только одно предположение -- указаны не правильные пути
Попробуйте:
start "" "d:\test\1.lnk"
dark-------13
12-05-2011, 18:12
d:\test существует другие батники работают как положено, этот не хочет после шифрования выполнять последующие команды - вообще ни какие ... шифрование делается сторонней программой от фирмы лан крипто , вот мне кажется это все из за нее хотя на 100 процентов не уверен т.к. в батниках не шарю.
dark-------13
12-05-2011, 18:33
XP pro corp sp2 32 битная
в предыдущей теме:
В третью очередь выполняем отправку файлов по почте
может для этого использовать планировщик заданий
dark-------13
12-05-2011, 18:50
Если по другому ни как, то его и буду использовать.
Foreigner
12-05-2011, 19:08
dark-------13,
Тогда попробуйте запускать cry с помощью start:
start /b /w cry "" "%$DST%\%%i"
Или вообще:
start /b /w "" cmd /c cry "%$DST%\%%i"
Этот cry он консольный?
dark-------13
12-05-2011, 22:09
да cry - консольная команда для программы шифрования, попробую и отпишусь сработало или нет
dark-------13
12-05-2011, 23:15
Нет все таки не работает
Foreigner
12-05-2011, 23:54
Файлы копируются? Шифруются? Еще раз проверьте пути в батнике. "D:\в го" и "D:\в_М" -- это так называются папки?
dark-------13, чтобы не гадать:
- заменить 1-ю строку батника "@echo off" -> "@echo on"
- запустить батник из CMD-консоли с выводом в лог:BATNIK.CMD >BATNIK.LOG 2>&1
- привести текст полученного лога BATNIK.LOG
dark-------13
13-05-2011, 09:28
Вот лог
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 - после него не выполняется ни одна команда, его можно найти?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.