![]() |
ошибка синтаксиса cmd скрипта
доброе утро!
проблема такая, нужно прочитать из входного файла 1.txt с вот таким содержимым данные после - COMPN-computer1 USER-den PASSWORD-1234 CMD-ipconfig ARGS- >c:\pc\2.txt WAIT-pause был написан такой код for /f "tokens=1-8 delims=-" %a in (1.txt) do set %a=%b psexec.exe \\%compn% -u %user% -p %password% %cmd% %args%&%wait% ,но не заработал. проблема в том, что если ручками вводить в CMD строку по одной строке: примерно вот так c:\pc>for /f "tokens=1-8 delims=-" %a in (1.txt) do set %a=%b c:\pc>set COMPN=computer1 c:\pc>set USER=den c:\pc>set PASSWORD=1234 c:\pc>set CMD=ipconfig c:\pc>set ARGS= >c:\pc\2.txt c:\pc>set WAIT=pause c:\pc>psexec.exe \\%compn% -u %user% -p %password% %cmd% %args%&%wait% PsExec v1.98 - Execute processes remotely Copyright (C) 2001-2010 Mark Russinovich Sysinternals - www.sysinternals.com ipconfig exited with error code 0. Press any key to continue . . . все работает, а вместе никак - т.е на выходе пустой файл 2.txt помогите, как оно должно быть? команда не обязательно ipconfig любая другая с параметром %args% тоже подойдет спасибо заранее всем хорошего дня! |
Den,
Код:
for /f "tokens=1,2 delims=-" %%a in (1.txt) do set "%%a=%%b" |
c:\pc>1.cmd
c:\pc>for /F "tokens=1,2 delims=-" %a in (1.txt) do set %a=%b c:\pc>set COMPN=Computer1 c:\pc>set USER=den c:\pc>set PASSWORD=1234 c:\pc>set CMD=ipconfig c:\pc>set ARGS= >c:\pc\2.txt c:\pc>set WAIT=pause c:\pc>psexec.exe \\Magic -u den -p 1234 ipconfig 1>c:\pc\2.txt & pause PsExec v1.98 - Execute processes remotely Copyright (C) 2001-2010 Mark Russinovich Sysinternals - www.sysinternals.com ipconfig exited with error code 0. Press any key to continue . . . ничего не изменилось !!! откуда перед >c:\pc\2.txt & pause взялась единица???? поэтому он и не пишет в 2.txt спасибо |
Цитата:
Код:
echo bla-bla-bla>some.txt Код:
1>some.txt echo bla-bla-bla |
так почему же .cmd файл не работает???
где конкретно ошибка ? как написать чтобы все заработало как надо??? спасибо |
Den, я не вижу приведённого Вами кода пакетного файла. Только отдельные команды или вывод командного процессора.
|
поставлю вопрос по другому как из этих двух строчек
for /f "tokens=1-8 delims=-" %a in (1.txt) do set %a=%b psexec.exe \\%compn% -u %user% -p %password% %cmd% %args%&%wait% сделать .cmd файл или вообще все переделать - неважно - главное прочитать из 1.txt информацию и внести ее в psexec.exe и получить на выходе текстовый файл с результатом выполненной команды с параметром необязательно ipconfig>c:\pc\2.txt видимо я совсем косоязычно выражаю мысли спасибо |
Цитата:
Болванка пакетного файла «Some.cmd»: Инициализационный файл «Some.ini»: Код:
COMPN=computer1 Код:
Some.cmd Some.ini |
Пробую!
Огромное спасибо за страрание и терпение! |
Цитата:
Цитата:
for /f "tokens=1,2 delims=:" %%a in (text.txt) do set %%a=%%b |
kiripanda, он так и делал (по ссылке — вывод командным процессором исполняемых им команд пакетного файла). Другое дело, что строить представление о содержимом пакетного файла по выводу как-то не рационально.
|
всем спасибо !
Отдельная благодарность Iska! все заработало впереди еще 2 задачи надеюсь на помощь! |
Время: 14:57. |
Время: 14:57.
© OSzone.net 2001-