繁体   English   中英

从 Python 运行 shell 并使其处于活动状态

[英]Run shell from Python and make it active

我使用 Python 脚本为长量子计算准备一些东西。 所以,当我从终端运行目标二进制文件时

targetbin file.inp > file.out

我可以看到该进程仍在运行。 使用 Python 我做了一些自动化:

#!/usr/bin/env python3

# blah blah blah

cmd = ' '.join([targetbin, modified_inp_file, some_options, '>', created_out_file])
# /usr/bin/targetbin /tmp/XXX.inp -a 1 -b 2 -c 3 > file.out

subprocess.Popen(cmd, shell=True)

从终端运行它:

pythonscript -x 1 -y 2 -z 3 file.inp

它工作正常,但它不持有外壳。 在 Python 启动进程后,我想将它完全委托给 shell,然后退出 Python 本身,就好像我自己输入了cmd 是否可以?

你可以试试这个方法——

  1. 运行运行 python 脚本的 shell 脚本。
  2. Python 将执行自动化并运行 POPEN 运行的进程。
  3. Shell 脚本将执行fg (或者,您可以从 python 获取PID并运行kill -CONT <pid> )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM