11

我正在使用 Windows 10 并安装了 Python。新的更新将 bash 带到了 windows,但是当我从 bash 内部调用 python 时,它指的是 bash 附带的 Python 安装,而不是我在 Windows 上安装的 Python。因此,例如,我不能使用已在 Windows 上安装的模块,而必须在 bash 安装时单独安装它们。

我如何(并且我可以?)使 bash 指向我原来的 Windows Python 安装?我看到在 /usr/bin 我有很多链接名称中包含“python”,但我不确定要更改哪些链接,如果将它们更改为 Windows 目录是否会因为不同的可执行格式而工作。

4

3 回答 3

5

从 Windows 10 Insider build #14951 开始,您现在可以从 Bash 中调用 Windows 可执行文件。

您可以通过显式调用可执行文件的绝对路径(c:\Windows\System32\notepad.exe例如notepad.exe.

注意:确保将 附加 .exe到可执行文件的名称 - 这是 Linux 知道您正在调用外部内容并将调用请求路由到已注册处理程序的方式 - 在这种情况下为 WSL。

因此,就您而言,如果您在 Windows 上的 C:\ 上安装了 Python 2.7,则可以在 bash 中使用如下命令调用它:

$ /mnt/c/Python2.7/bin/python.exe

(或类似的 - 检查您是否正确指定了每个文件夹/文件名大小写等)

HTH。

于 2016-12-01T00:07:44.247 回答
0

我没有安装 Windows 10,但我使用 Babun,我遇到了同样的问题。当我读到别名在 Windows 10 shell 中运行良好时,只需在指向 Python 安装目录的 .bashrc 中添加别名:

alias python /mnt/c/Python27/python
于 2016-08-05T21:17:53.703 回答
0

你至少有四个选择:

  1. 指定要使用的 python 可执行文件的完整绝对路径。
  2. 在 .bashrc 文件中定义别名
  3. 修改 .bashrc 文件中的 PATH 变量以包含您希望使用的 python 版本的位置。
  4. 在 PATH 中已经存在的目录中创建符号链接。
于 2016-08-05T21:20:48.260 回答