在 Python 中运行 BASH 内置命令?
有没有办法从 Python 运行 BASH 内置命令?
我尝试过:
subprocess.Popen(['bash','history'],shell=True, stdout=PIPE)
subprocess.Popen('history', shell=True, executable = "/bin/bash", stdout=subprocess.PIPE)
os.system('history')
及其许多变体。我想运行 history
或 fc -ln
。
Is there a way to run the BASH built-in commands from Python?
I tried:
subprocess.Popen(['bash','history'],shell=True, stdout=PIPE)
subprocess.Popen('history', shell=True, executable = "/bin/bash", stdout=subprocess.PIPE)
os.system('history')
and many variations thereof. I would like to run history
or fc -ln
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我终于找到了一个有效的解决方案。
感谢大家的意见。
I finally found a solution that works.
Thank you everyone for the input.
这会调用 bash 并告诉 bash 运行字符串
type type
,该字符串在参数type
上运行内置命令type
。输出:
type is a shellbuiltin
-c
之后的部分必须是一个字符串。这是行不通的:["bash", "-c", "type", "type"]
this calls bash and tells bash to run the string
type type
, which runs the builtin commandtype
on the argumenttype
.output:
type is a shell builtin
the part after
-c
has to be one string. this will not work:["bash", "-c", "type", "type"]