我有一个运行 Python 3.7 的 Anaconda 环境
我有一个 Jupyter 笔记本,其中包含以下行:
!aws configure [....] #Can't display the rest of the code for privacy reasons
当我运行代码块时,我得到:
/bin/sh: aws: command not found
尽管已经运行:
pip install awscli
成功了。
我该如何解决/调试这个问题?
我设法确定 Jupyter 笔记本看到的路径和 env 命令行中显示的路径不同。我该如何解决这个问题?
最佳答案
首先介绍一下我的环境背景:
我在 ubuntu 机器上安装了 aws
pip install aws
我检查了终端中的以下命令
aws
给了我输出:
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run:
aws help aws <command> help aws <command> <subcommand> help aws: error: the following arguments are required: command
正如预期的那样。我还想知道需要注册哪个路径才能找到 aws。因此,我输入:
which aws
这给了我
/usr/bin/aws
然后我启动了一个 docker 容器,在其中启动了一个 jupyter 笔记本实例。我也将/usr/bin 路径映射到/usr/bin 。在 jupyter 笔记本中,我想确定我是否有权访问/usr/bin/aws。我尝试过:
!ls /usr/bin/aws
但什么也没找到。我仍然认为这很奇怪,我不明白,因为我可以找到该文件夹的其余部分。正如预期的那样,在 jupyter 中输入“!aws”给了我一个“命令未找到”。
现在这部分也应该可以解决您的问题:
在您的 jupyter 环境中安装 awscli,就像我一样,该环境可能与您成功运行 aws 命令的环境不同。要在 jupyter 中运行它:
!pip install awscli
我之前在终端中配置过aws。然而在 jupyter 中(在 docker 中),配置是空的。我附加到 docker 容器并运行“aws configure”,按照官方教程进行操作。如果您不运行 docker,而是运行 anaconda 或任何虚拟环境,则需要进入该环境,然后 pip install aws 并在其中运行 aws configure。
完成此操作后,在 jupyter 笔记本中输入“!aws”应该会得到预期的输出
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run:
aws help aws <command> help aws <command> <subcommand> help aws: error: the following arguments are required: command
希望这有帮助。
关于python-3.x - pip 安装成功后,aws cli 无法在 Jupyter 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52563630/