【发布时间】:2021-05-09 04:39:57
【问题描述】:
我仍有遗留的 Python 代码需要支持。但是我也在做一些python3的开发。
我已经用配置文件配置了 pip:
[global]
log = /home/USER_NAME/.local/pip/pip.log
format = columns
问题是 pip2 和 pip3 都使用同一个日志文件。
你能否为 pip2 和 pip3 配置不同的日志文件,是/否?如果是,怎么做?
附言如果有指定配置文件的选项,我可以只为 pip2、pip3 设置一个别名,其中别名具有不同的配置文件,但可惜我没有看到任何用于指定配置文件的 pip 选项。
p.p.s.我所有的 pip install 命令都是“--user”(我通常/一般都反对 sudo pip install)。
这里有一个解决方法:
创建一个新脚本 pip2 和 pip3 并将其放在 pip2 和 pip3 之前的路径上。 这些脚本至少会显示日志文件的哪些部分是由 pip2 和 pip3 生成的。
pip2 脚本:
#!/bin/bash
echo "[$(date +'%Y-%m-%d_%H-%M-%S')]: pip2" $@ >> ~/.local/pip/pip.log
python2 -m pip $@
pip3 脚本:
#!/bin/bash
echo "[$(date +'%Y-%m-%d_%H-%M-%S')]: pip3" $@ >> ~/.local/pip/pip.log
python3 -m pip $@
【问题讨论】:
-
如何使用虚拟环境(无论如何这是最佳实践)。然后每个虚拟环境都有自己的配置文件pip.pypa.io/en/stable/user_guide/#config-file 在这种情况下,只需确保不有一个全局配置文件,因为它将具有优先权
-
@DeepSpace 用于 python2 和 python3 的不同 virtualenv 每个都有自己的 pip.conf 可能是要走的路。因为它做了问题所要求的(即 pip2 和 pip3 的不同日志文件)。它只需要一点额外的工作。
-
关于您添加的解决方法。如果您已经在两个脚本中重定向了输出,那么为什么不简单地重定向到单独的文件呢?
>> ~/.local/pip/pip2.log和>> ~/.local/pip/pip3.log
标签: python pip configuration