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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - echo wmic bios get serialnumber Ломает логирование

Ответить
Настройки темы
CMD/BAT - echo wmic bios get serialnumber Ломает логирование

Аватара для merdzd

Старожил


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


Конфигурация

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


Добрый день.

Есть 2 скрипта один с "wmic bios get serialnumber>>" все действия пишутся в 1>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt 2>>&1

[code]for /f %%a in ('wmic bios get serialnumber /value^|find "="') do set "%%a"
echo test \\Server\_INST\%SerialNumber%-install-%DATE%.txt
echo test %DATE% Start \\Server\_INST\%SerialNumber%-install-%DATE%.txt

wmic bios get serialnumber>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt[/CODE]

Второй без. "wmic bios get serialnumber>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt["

Первый ломает кодировку так, что она не понимается ни каким шрифтом в блокноте.

Пробовал добавить "chcp" после определения переменной не помогло.

Еще вопрос по кодировке:
Если выполнять net stop wuauserv 1>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt 2>>&1
Служба у которой есть кирилическое название,
результаты:

chcp 855 \ chcp 65001
The –Ґ*ва ®Ў*®ў«Ґ*Ёп Windows service is not started.

chcp 1251
‘«г¦Ў* "–Ґ*ва ®Ў*®ў«Ґ*Ёп Windows" *Ґ §*ЇгйҐ**.

Читается шрифтом терминал. а если менять шрифт все что выше с кодировкой chcp 1251 не прочитать.

Отправлено: 10:49, 26-05-2020

 

Аватара для merdzd

Старожил


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

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


Цитата merdzd:
Первый ломает кодировку так, что она не понимается ни каким шрифтом в блокноте. »
Update В UTF-16LE сохраняет.

Отправлено: 10:53, 26-05-2020 | #2



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

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


Ветеран


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

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



merdzd, удобно все просматривать не штатным блокнотом, сразу видна кодировка
Код: Выделить весь код
@echo off
wmic bios get serialnumber
>file1.txt wmic bios get serialnumber
>file2.txt (for /f "delims=" %%a in ('wmic bios get serialnumber') do @echo:%%a)
pause
1.jpg

Отправлено: 16:12, 26-05-2020 | #3


Ветеран


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

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


Цитата merdzd:
Первый ломает кодировку так, что она не понимается ни каким шрифтом в блокноте. »
Цитата merdzd:
Update В UTF-16LE сохраняет. »
Именно так. Причём у Вас явным образом получается смесь из юникода и OEM/866.

Лучше зараз переходить на WSH/PowerShell.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:15, 26-05-2020 | #4


Аватара для merdzd

Старожил


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

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


Есть одно но

Прекрасно работает:
wmic bios get serialnumber>>\\Server\_INST\install-%DATE%.txt
даёт точно такой же результат как у вас alpar
с кодировкой всё нормально.

А
wmic bios get serialnumber>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt
с переменной %SerialNumber% меняет кодировку.
При том все другие строки в файле с этой переменной обрабатываются.

Отправлено: 11:00, 27-05-2020 | #5


Аватара для DJ Mogarych

fascinating rhythm


Moderator


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

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


Powershell:
Код: Выделить весь код
$biosSN = (gwmi win32_bios).serialnumber
$biosSN |Out-File "\\Server\_INST\$biosSN-install-$((get-date).ToString("dd.MM.yyyy")).txt" -Append

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 13:10, 27-05-2020 | #6


Аватара для merdzd

Старожил


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

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


DJ Mogarych,
Цитата merdzd:
Прекрасно работает:
wmic bios get serialnumber>>\\Server\_INST\install-%DATE%.txt »
я разобрался >> не было во второй строке:

Цитата merdzd:
Код: Выделить весь код
for /f %%a in ('wmic bios get serialnumber /value^|find "="') do set "%%a"
echo test \\Server\_INST\%SerialNumber%-install-%DATE%.txt
echo test %DATE% Start \\Server\_INST\%SerialNumber%-install-%DATE%.txt
wmic bios get serialnumber>>\\Server\_INST\%SerialNumber%-install-%DATE%.txt
»

Отправлено: 15:35, 27-05-2020 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - echo wmic bios get serialnumber Ломает логирование

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Ноутбук ломает приводы и нужно ли извлекать батарею перед их заменой? Ladislaus Оптические приводы 5 18-12-2019 12:02
Привод ломает диски. sandy15 Оптические приводы 14 07-08-2016 09:26
CMD/BAT - [решено] Работа с WMIC svoboda1984 Скриптовые языки администрирования Windows 5 28-11-2015 00:37
Установка Office 97 в среде Windows 7 ''ломает'' UAC OSZone News Новости и события Microsoft 12 05-01-2010 05:09
Разное - Vista ломает кодировку у отправляемых писем myakuhin Microsoft Windows Vista 1 27-11-2008 18:27




 
Переход