Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Результат выполнение комманды в файл

Ответить
Настройки темы
CMD/BAT - [решено] Результат выполнение комманды в файл

Пользователь


Сообщения: 97
Благодарности: 8

Профиль | Отправить PM | Цитировать


Здравствуйте. CMD/BAT знаю очень плохо.
Мне нужно результат команды запуска службы (net start), сохранить в файл.
Знаю что делается это так:
Код: Выделить весь код
net start имя_службы > test.txt
Но это работает только в случае успешного выполнения команды.
Если служба уже запущенна, то CMD выведет "Затребованная служба уже запущенна", но это не будет сохранено в файл (по крайней мере у меня).
Как сделать так, чтобы результат выполнения команды в любом случае сохранялся в файл, даже если он неудачный?
Спасибо!

Отправлено: 19:31, 26-07-2011

 

Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


fooger, попробуйте так:
Код: Выделить весь код
net start имя_службы 1>test.txt 2>&1
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:43, 26-07-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 415
Благодарности: 257

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Net Start имя_службы >log.txt||Echo Служба уже запущена >log.txt
UPD: Не заметил, что gora уже ответил, в любом случае, работать будут оба варианта.
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:45, 26-07-2011 | #3


Пользователь


Сообщения: 97
Благодарности: 8

Профиль | Отправить PM | Цитировать


gora, Anonymоus, большое спасибо!
Теперь новый вопрос, а как исправить то, что оно в какой-то не понятной кодировке?
Получается вот что
Код: Выделить весь код
‡*вॡ®ў****п б«г¦Ў* 㦥 §*ЇгйҐ**.

„«п ўл§®ў* ¤®Ї®«*ЁвҐ«м*®© бЇа*ўЄЁ **ЎҐаЁвҐ NET HELPMSG 2182.

Отправлено: 19:52, 26-07-2011 | #4


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата Anonymоus:
в любом случае, работать будут оба варианта »
Не критики ради, а пользы для... В Вашем варианте при указании несуществующей службы будет выведено "Служба уже запущена" вместо "Неправильное имя службы."

Цитата fooger:
оно в какой-то не понятной кодировке? »
В кодировке Кириллица DOS
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:54, 26-07-2011 | #5


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


А куда она отдает при успехе, в stdout или stderr?
Код: Выделить весь код
net start имя_службы 1>&2 2>test.txt

Отправлено: 19:58, 26-07-2011 | #6


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Foreigner тестовый скрипт:
Код: Выделить весь код
net start ZentimoService 1>test.txt 2>&1 
net start ZentimoService 1>>test.txt 2>&1 
net stop ZentimoService 1>>test.txt 2>&1 
net start ZentimoService1 1>>test.txt 2>&1
Выводит в test.txt
Код: Выделить весь код
Служба "Zentimo Assistant" успешно запущена.

Затребованная служба уже запущена.

Для вызова дополнительной справки наберите NET HELPMSG 2182.

Служба "Zentimo Assistant" останавливается.
Служба "Zentimo Assistant" успешно остановлена.

Неправильное имя службы.

Для вызова дополнительной справки наберите NET HELPMSG 2185.
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:09, 26-07-2011 | #7


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Цитата fooger:
Теперь новый вопрос, а как исправить то, что оно в какой-то не понятной кодировке? »
Код: Выделить весь код
@echo off
setlocal
chcp 866 1>nul

for /f "tokens=*" %%i in ('" 2>&1 net start служба "') do call:echo "%%i"
goto:eof

:echo
chcp 1251 1>nul
1>>1.txt echo %~1
chcp 866 1>nul
gora, Это я просто запутался и мне показалось, что она всегда перенаправляет в STDERR

Последний раз редактировалось Foreigner, 26-07-2011 в 20:37.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:11, 26-07-2011 | #8


Пользователь


Сообщения: 97
Благодарности: 8

Профиль | Отправить PM | Цитировать


Foreigner, ОГРОМНОЕ СПАСИБО!!!
Все очень помогли

Спасибо еще раз!

Отправлено: 04:39, 27-07-2011 | #9


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата rsuan:
а успешные выводятся на консоль и не попадают в файл. »
С чего бы это? «1>test.txt» (или просто «>test.txt») перенаправляет стандартный поток вывода в файл.

Цитата rsuan:
Как сделать чтобы при любом раскладе попадало в файл? »
Вот так, как выше написано, и делать. Если у Вас что-то не попадает, начинайте излагать конкретные детали.

Отправлено: 14:09, 05-04-2018 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Результат выполнение комманды в файл

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Результат выполнения команды дописать в файл в определенную строку DR_WELL Скриптовые языки администрирования Windows 1 24-06-2011 04:57
CMD/BAT - [решено] найти путь к файлу/папке с помощью батника и занести результат в txt файл sharky lions Скриптовые языки администрирования Windows 4 17-04-2011 19:57
CMD/BAT - [решено] нужен батник который бы пинговал диапазон ip и записывал результат в файл dvassilyev Скриптовые языки администрирования Windows 7 08-05-2009 14:33
Комманды из bat fedww Программное обеспечение Windows 0 25-06-2007 13:44
Как одновременно вывести результат на экран и в файл в консоли Windows? warezhka84 Хочу все знать 3 17-12-2004 17:16




 
Переход