Как отмечалось в комментариях, я получал данные, которые не были датой, так как они анализировали весь журнал. Поиск входного файла для желаемого текста решил мои проблемы, и я перешел на предложение Чарльза.
while read -r line || [[ -n "$line" ]]
do
log_date_str="$(awk '{gsub("\\[|\\]", "");print $1" "substr($2,1,length($2)-4)}' <<< "$line")"
log_date="$(date -d "$log_date_str" +%s)"
(( ( $(date +%s) - log_date ) <= 3600 )) && echo "$line"
done < <(grep ERROR_STRING /path/to/file.log)
Нет никакого зарегистрированного способа сделать это.
Беглый взгляд в Апплете Региональных настроек dll показывает, что называет полностью недокументированный API: NlsUpdateSystemLocale ().
Почему Вы хотите сделать это? Вы хотите управлять локалью вашего сервиса? Затем позвольте своему сервису, выполненному под учетной записью пользователя, которой Вы управляете.
Не настолько легкий.
Быстрый путь: определите определенного пользователя, чтобы выполнить обслуживание, вход в систему с тем пользователем, установить региональные настройки, выполнить сервис.
Разве Вы не могли использовать regedt32 на машине и установить все корректные настройки..., затем экспортируют папку International путем щелчка правой кнопкой и экспортируют reg файл.
можно вручную отредактировать экспортируемый reg файл, если Вам не нужны все настройки
затем можно ли выполнить это reg файл на новой машине для импорта ключей реестра и т.д.?
IM, не уверенный, если это поможет
Сначала введите в gpedit.msc от команды выполнения, и диалоговое окно должно теперь открыться. Перейдите к Пользовательской Конфигурации> Административные Шаблоны> Панель управления> Региональные настройки.
Это показывает полицейских группы для PC/s, возможно, можно просто установить его так en_gb, единственная опция!!
Групповая политика не является моей сильной стороной, но Google ищут и идут оттуда, я предположил бы, что необходимо смочь настроить то, кто и что может сделать что отсюда.
HTH