python - 如何暂停 Python 脚本并让用户在 Linux 终端中输入

标签 python linux subprocess

我正在制作一个 Python 脚本来自动执行 Linux 中的某些任务。 该脚本安装了一些软件包,并且在安装此 pacakges 之后,我希望用户运行一些终端命令。我想知道是否有一种方法可以通过“暂停”脚本并在终端和用户之间创建直接通信来做到这一点。

我知道还有其他方法可以做到这一点,例如通过在 python 中编写输入语句并进行 os 调用来运行用户键入的内容

from python import os

cmd = input('Type your command here: ')
os.system(cmd)

或者以同样的方式使用一些子进程函数

import subprocess

cmd = input('Type your command here: ')
p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
output, errors = p.communicate()

但是有一种方法可以在脚本运行时在终端和用户之间创建通信而无需打开新终端吗?

最佳答案

您可以只启动一个 shell session :

os.system('/bin/sh')

关于python - 如何暂停 Python 脚本并让用户在 Linux 终端中输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56627574/

相关文章:

python - 如何为用 Python 编写的 Gedit 插件定义图标

linux - Debian 内核头文件 3.15

python - 使用包含相同长度的列表验证字典

python - 如何在数据帧之间随机分配值

c - 从 C 中的文件描述符中检索文件名

python子进程通信卡住

python - LookupError : unknown encoding: idna - only from subprocess. 调用

python - 使用两个字符串输入运行子进程命令

python - 强制继承类型的兼容性 (Python)

c++ - 在 Linux 中获取 TCP/UDP 表