【问题标题】:How to get path to the installed GIT in Python?如何在 Python 中获取已安装 GIT 的路径?
【发布时间】:2010-03-12 18:49:35
【问题描述】:

我需要使用 Python 2.6.1 将 Max OS X 10.6 上的 GIT 路径放入脚本变量中。我为此使用此代码:

r = subprocess.Popen(shlex.split("which git"), stdout=subprocess.PIPE)
print r.stdout.read()

但问题是输出为空(我也试过stderr)。它适用于其他命令,例如 pwdls

谁能帮我解决这个问题?

更新:当我从终端运行which git 时,它会按预期打印出路径。所以,which 可以找到它。

更新 2:我刚刚创建了 bash 脚本

#!/usr/bin/env bash
GP=`/usr/bin/which git`
PWD=`pwd`
echo "PATH IS: ${GP}"
echo "PWD IS: ${PWD}"

输出是

PATH IS: 
PWD IS: /Users/user/tmp

【问题讨论】:

  • 你所拥有的对我来说很好用(虽然我不在 OS X 上)。两个换行符(一个来自 which,一个来自 print)会不会给您带来问题?

标签: python subprocess osx-snow-leopard


【解决方案1】:

所做的只是遍历 $PATH 中的目录,检查文件是否存在。只需编写一个小方法即可。

【讨论】:

  • which 还会检查文件是否可由当前用户执行。
  • 是的,问题与 $PATH 相关,这与 TextMate 和我们的应用程序不同(为什么?)。
猜你喜欢
  • 2014-12-08
  • 2022-01-02
  • 2014-09-10
  • 2023-02-09
  • 1970-01-01
  • 2023-02-23
  • 2011-09-02
  • 1970-01-01
  • 2019-09-22
相关资源
最近更新 更多