我有一個shell,我用pwd來顯示我在哪個目錄下。但是當我在目錄是,它是一個符號鏈接顯示它原來的目錄而不是符號連接pwd從python擴展符號鏈接
import subprocess as sub
def execv(command, path):
p = sub.Popen(['/bin/bash', '-c', command],
stdout=sub.PIPE, stderr=sub.STDOUT, cwd=path)
return p.stdout.read()[:-1]
如果我有文件夾/home/foo/mime
,它的符號鏈接/usr/share/mime
當我打電話
execv('pwd', '/home/foo/mime')
我的/ usr /分享/ MIME
我對shell代碼如下所示:
m = re.match(" *cd (.*)", form['command'])
if m:
path = m.group(1)
if path[0] != '/':
path = "%s/%s" % (form['path'], path)
if os.path.exists(path):
stdout.write(execv("pwd", path))
else:
stdout.write("false")
else:
try:
stdout.write(execv(form['command'], form['path']))
except OSError, e:
stdout.write(e.args[1])
我在JavaScript中有客戶端
(可能返回命令和新路徑的結果,因爲JSON會更好)。
有沒有辦法使pwd
返回符號鏈接而不是原始目錄。
不知道它有幫助:[os.getcwd()](http://docs.python.org/library/os.html#os-file-dir)會給你當前的工作目錄。 – bpgergo
它也支持符號鏈接iirc – Jharwood