如何在 Python 中使用 bash shell 代替 /bin/sh

如何在 Python 中使用 bash shell 代替 /bin/sh

我有可以在终端中执行的命令,但我想直接从我的 python 脚本执行它们,除了我的脚本在 中启动命令/bin/sh,而我的终端是 bash。

例子

在我的脚本中:

!macommande

/bin/sh: macommande: command not found

在终端上时:

[user@user] $ macommande

bash: macommande: command not found

ps:我的命令在 上运行良好bash,但在 上运行不佳/bin/sh

!ll

/bin/sh: ll: command not found

在终端上时:

[user@user] $ ll

rw-rw-r--  1 1614 Apr 10 16003 example
drwxrwxr-x  3 4096 Apr 10 10:13 config
drwxrwxr-x  3 4096 Apr 10 10:09 demo00

答案1

因为您在 shell 命令前面加上了感叹号,所以这表明您正在使用 Ipython。如果这是真的,我建议您阅读这篇文章:Ipython 和 Shell 命令

简而言之,如果您不使用“!”,“list long”或“ll”命令将起作用。感叹号。我怀疑你的“macommande”也会起作用。

要输入多行 bash 命令,您可以使用“%%bash”。希望有帮助。

相关内容