bash - 无法从 cygwin 运行 'aws'

标签 bash amazon-web-services cygwin aws-cli

我正在使用安装在 Windows 10 上的 cygwin 并尝试从中访问 awscli

我使用 pip install awscli 来安装 awscli。这安装了 awscli。然后,我尝试仅运行 aws 以查看它是否已安装,但出现以下错误:

-bash: /cygdrive/c/Program Files/Anaconda2/Scripts/aws: C:\Program: bad interpreter: No such file or directory

我不确定为什么会这样。在这方面的任何帮助将不胜感激。

最佳答案

即使使用最新版本的 AWS cli,这仍然是一个问题。因此,经过反复试验后,我发现了一个非常好的解决方法,它不会让您切换自己喜欢的 shell。

首先,确保 python 在您的 PATH 中。也就是说,您可以从系统中的任何地方运行 python,它就可以工作。

找到 aws 脚本并打开它进行编辑(对我来说它位于 c:\Program Files\Python36\Scripts\aws)并更改 hashbang(这将是脚本)到 #!python.exe。对我来说,它被设置为 #!c:\Program Files\Python36\python.exeProgram Files 中间的那个空间在该路径转换为类似 Linux 的路径时导致了问题。将其更改为 #!python.exe 可回避问题。

更新 AWS cli 时,重复解决方法。

附言。您也可以通过在路径中没有空格的文件夹中的某处安装 python 来避免此问题。这需要重新配置您的系统,所以我自己没有这样做。

关于bash - 无法从 cygwin 运行 'aws',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40211017/

相关文章:

linux - 如何从 sh 脚本运行 csh 脚本

bash - awk 脚本中的 "BEGIN blocks must have an action part"错误

amazon-web-services - 等待 K8S 作业完成

amazon-web-services - 如何在 AWS 中设置 kubernetes 的 loaderbalancer 服务

c++ - cygwin pthread_mutex_timedlock 代理

linux - BASH_VERSION 为空,即使 SHELL 是/bin/bash

arrays - 如何在 Dockerfile 中分配数组?

amazon-web-services - 通过站点到站点 VPN 从本地连接到 AWS s3

Bash 像 Windows 一样排序 'natural sort order'

python - 与使用 Python/Gradle 转义字符相关的跨平台问题