在Windows上将aw cli与pythno 3一起使用时,始终会收到警告,但是该程序在出现此消息后运行良好。
例如:
>>> aws --version --debug
Не найдено сопоставление для расширения имени файла .py.
aws-cli/1.15.83 Python/3.6.0 Windows/7 botocore/1.10.82
(模糊地-'找不到文件扩展名.py的关联)
有人知道aws脚本的哪一部分发出此警告以及如何解决该警告? AWS在哪个部分使用Windows调用?
答案 0 :(得分:2)
正如@Evgeny在Windows中描述的那样,在安装AWS CLI后,文件aws.cmd
包含以下行,该行调用命令assoc
并产生警告:
for /f "tokens=2 delims==" %%i in ('assoc .py') do (
命令assoc .py
显示Windows中是否存在与python文件的关联。如果您在主命令行中没有与* .py文件关联的python可执行文件(在Anaconda环境中则为否)。
您可以测试是否可以打开命令行窗口并尝试通过以下方式在文件夹中运行简单脚本:
>test.py
如果遇到错误并且想要删除警告,则必须使用以下选项之一为python文件建立新的关联。
assoc .py=py_auto_file
ftype py_auto_file="C:\Anaconda3\python.exe" "%1" %*
右键单击任何扩展名为* .py的文件,然后选择属性,然后选择管理此文件的程序,例如在“ C:\ Anaconda3 \ python.exe”中,或更改默认应用程序。
在Windows 10中,您可以按照以下顺序操作:“开始菜单,选择设置>应用>默认应用”
答案 1 :(得分:0)
您必须满足以下条件:https://www.python.org/downloads/
以便Windows可以在其中注册文件类型dir2/results2
。
或者您必须注册.py
才能使用.py
(或类似名称)打开。
答案 2 :(得分:0)
我设法获得有关issue on Github的反馈。基本上,只有一行可以更改警告。
在aws.cmd
中,而不是:
for /f "tokens=2 delims==" %%i in ('assoc .py') do (
使用:
for /f "tokens=2 delims==" %%i in ('assoc .py 2^> nul') do (
这会将警告转移为null。还有一个 pull request 有了建议的更改,但不幸的是它并未合并为代码。
遇到此问题的任何人都可以将本地文件aws.cmd
更改为<your python directory>/Scripts
文件夹。