【发布时间】: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)。它适用于其他命令,例如 pwd 或 ls。
谁能帮我解决这个问题?
更新:当我从终端运行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