Войти

Показать полную графическую версию : [решено] BAT - plink.exe > log.txt


mulrus
06-06-2013, 12:08
Приветствую всех.

Столкнулся с такой проблемой. Есть батник:

echo y | plink.exe root@192.168.12.13 -pw "parol" -m command.txt >> log.txt

В файле command.txt содержится просто скрипт ребута службы: service CRON restart

А в файл log.txt записывается значение = [70G[ [1;33mOK[0;39m ]


Короче у меня таких компов не один, я хочу сделать, чтобы в файл log.txt выдавалось:
192.168.12.13 - [70G[ [1;33mOK[0;39m ]
192.168.12.14 - [70G[ [1;33mOK[0;39m ]
192.168.12.15 - Network error

Короче мне надо сделать так чтобы конкатенировать IP-адрес + сообщение от Plink'a. Как сделать?

Iska
06-06-2013, 12:28
А в файл rt.txt »
Откуда он взялся?

mulrus
06-06-2013, 12:34
Сорр log.txt

Georgio
06-06-2013, 12:38
"Короче", если я хоть что-то понял, попробуйте:

@ECHO OFF
FOR %%I IN (192.168.12.13 192.168.12.14 192.168.12.15) DO (
FOR /F "tokens=*" %%J IN ('ECHO y ^| plink.exe root@%%I -pw "parol" -m command.txt') DO (
ECHO %%I - %%J>>log.txt
))

mulrus
06-06-2013, 12:53
@ECHO OFF FOR %%I IN (192.168.12.13 192.168.12.14 192.168.12.15) DO ( FOR /F "tokens=*" %%J IN ('ECHO y ^| plink.exe root@%%I -pw "parol" -m command.txt') DO ( ECHO %%I - %%J>>log.txt )) »

Спасибо огромное работает. Только не понятно, почему в окне пишет "Не удается найти указанный файл".

mulrus
06-06-2013, 13:23
Хм обнаружил еще такую вещь если соединение успешно, то все ок. А если нет то не IP-шника, можно ли как-то сделать, чтобы если случилась ошибка, ну скажем не выполнилось что либо, то просто писать 192.168.12.14 - ERROR

Georgio
06-06-2013, 14:11
Извините, если что не так, поскольку проверять, сами понимаете, не на чем. "Короче", выкладываю сразу два варианта.

@ECHO OFF
FOR %%I IN (192.168.12.13 192.168.12.14 192.168.12.15) DO (
FOR /F "tokens=*" %%J IN ('ECHO y^|plink.exe root@%%I -pw "parol" -m command.txt^|^|ECHO. - ERROR') DO (
ECHO %%I - %%J>>log.txt
))

@ECHO OFF
FOR %%I IN (192.168.12.13 192.168.12.14 192.168.12.15) DO (
FOR /F "tokens=*" %%J IN ('ECHO y^|plink.exe root@%%I -pw "parol" -m command.txt 2^>^>log.txt') DO (
ECHO %%I - %%J>>log.txt
))

mulrus
06-06-2013, 14:18
СПАСИБО ОГРОМНЕЙШЕЕ! ТО ЧТО НУЖНО!




© OSzone.net 2001-2012