【问题标题】:Unable to open sublime from subprocess module?无法从子进程模块打开崇高?
【发布时间】:2021-05-05 02:58:32
【问题描述】:

我在我的 Mac 上运行以下脚本:

import subprocess

cmd = "sublime driver.py"
p = subprocess.Popen(cmd, shell=True)
p.wait()

我在文件driver.py 所在的目录中。所以,如果我在我的终端上并做了sublime driver.py 它会工作得很好。但是,当我运行此程序时出现此错误: /bin/sh: sublime: command not found.

这是为什么呢?我假设是因为命令“sublime”是 .bash_profile 中的别名,定义为

alias sublime="open -a /Applications/SublimeText.app"

如何在 python 3 中通过 subprocess 模块运行别名?

【问题讨论】:

  • 试试p = subprocess.Popen(cmd.split(), shell=True)
  • @OlvinR​​oght,感谢您的回复。我现在收到此错误:driver.py: sublime: command not found

标签: python terminal subprocess


【解决方案1】:

是的,你是对的,

尝试以下操作:-

import subprocess

cmd = "open -a /Applications/SublimeText.app driver.py"
p = subprocess.Popen(cmd, shell=True)
p.wait()

如果您仍想使用别名运行命令,请检查此answer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-22
    • 1970-01-01
    • 2013-12-12
    相关资源
    最近更新 更多