【问题标题】:How would one pip freeze/list all virtualenvs?一个 pip 如何冻结/列出所有 virtualenvs?
【发布时间】:2013-04-26 15:26:01
【问题描述】:

我在单个服务器上有多个 virtualenv,我想对所有 virtualenv 执行 2 次操作。

  1. 点冻结
  2. 点子列表 --outdated

是否有自动化的解决方案/命令允许我在所有 virtualenvs 上执行这些 pip 操作,而不必依次运行/激活/停用每个 virtualenv 并运行 pip 命令?

我看到作为 virtualenvwrapper 的一部分,有 lsvirtualenv 命令列出所有 virtualenvs。但我没有看到在每个 virtualenv 中运行 pip 命令的解决方案。

谢谢

【问题讨论】:

    标签: virtualenv pip virtualenvwrapper


    【解决方案1】:

    这早就应该得到答案了。如果您直接在 virtualenv 的 bin 文件夹中运行 pip 脚本,那么您无需为激活/停用舞蹈而烦恼。牢记这一点,我想出了以下临时 bash 别名,用于快速而肮脏的解决方案,在我测试它们时似乎可以工作:

    $ alias freeze-all='find . -type f -perm /ugo+x -regex \'.*/bin/pip$\' -exec echo {} freeze: \; -exec pip freeze \;'
    $ alias outdated-all='find . -type f -perm /ugo+x -regex \'.*/bin/pip$\' -exec ehco {} list --outdated \; -exec {} list --outdated\;'
    

    然后将别名运行为$ freeze-all$ outdated-all。如果您喜欢这些行(不带 $ 提示符),您可以将它们添加到您的 .bashrc 文件中和/或修改它以适应您的口味。它可能缺乏修饰,但它会完成工作。

    【讨论】:

      猜你喜欢
      • 2013-12-08
      • 1970-01-01
      • 1970-01-01
      • 2013-11-21
      • 2016-12-23
      • 1970-01-01
      • 2016-06-03
      • 2016-08-15
      相关资源
      最近更新 更多