【问题标题】:Executing aws cli using php in windows - error unknown encoding在 Windows 中使用 php 执行 aws cli - 错误未知编码
【发布时间】:2019-02-23 18:41:41
【问题描述】:

试图从php调用aws cli,但是简单的测试shell_exec('aws help');会导致如下错误:

Traceback (most recent call last):
  File "aws", line 27, in <module>
  File "aws", line 23, in main
  File "awscli\clidriver.pyc", line 59, in main
  File "awscli\clidriver.pyc", line 197, in main
  File "awscli\argparser.pyc", line 100, in parse_known_args
LookupError: unknown encoding: cp65001

直接在命令窗口(cmd.exe)中运行时效果很好。

Python 版本:

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32

由于某种原因,shell_exec 默认使用 utf8 / cp65001...

【问题讨论】:

    标签: php aws-cli


    【解决方案1】:

    在尝试设置不同的语言环境配置和 php 设置后终于找到了解决方案。

    在任何shell_exec 解决之前调用chcp

    exec("chcp 850");
    

    【讨论】:

      猜你喜欢
      • 2019-05-06
      • 2019-04-08
      • 2019-07-20
      • 2013-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-08
      相关资源
      最近更新 更多