Как правильно отображать подчеркнутые символы в результате check_nrpe на основе сценария Powershell?
У меня есть собственный сценарий Powershell, вызываемый Nagios с использованием «check_nrpe». В настоящее время все выходные сообщения результатов проверки со специальными символами, такими как «è», «é» или «à», не отображаются должным образом, когда результат проверки отображается в Nagios.
Как обеспечить их корректное отображение?
Проверить команду
      $USER1$/check_nrpe  -H server.tld -c check_foo -a 7 7 7  
Вызов сценария на nsclient.ini
      [/settings/external scripts/scripts]
check_foo = cmd /c echo X:\scripts_\check-foo.ps1 -arg1 "$ARG1$" -arg2 "$ARG2$" -arg3 "$ARG3$"; exit($lastexitcode) | powershell.exe -command -
Ожидаемый результат
      CRITICAL - Vérification échouée
Фактический результат
      # UTF-8 BOM (GUI)
CRITICAL - Vrification choue
# UTF-8 BOM (CLI)
CRITICAL - V,rification ,choue,
# UTF-8 (GUI)
CRITICAL - VǸrification ǸchoueǸ 
В настоящее время мой сценарий Powershell вызывается удаленно с помощью «check_nrpe» с компьютера мониторинга Linux CentOS 7 и NSClient++ на целевом сервере (Windows 2016 Server). Сам скрипт кодируется как «UTF-8 BOM».
1 ответ
отключите кодировку nsclient.ini utf8
      [/settings/NRPE/server]
;encoding = utf8
в вашем скрипте используйте
      [Console]::OutputEncoding = [System.Text.Encoding]::UTF8
выведите результат с помощью: (вместо вывода записи или хоста записи)
      [Console]::WriteLine("ééé")
у меня работает, забираю отсюда