我遇到了这个问题:
我输入sudo apt-get install <package>
,然后点击Enter。 apt-get
开始解析依赖项并下载/安装软件包。在运行时,我想在同一个终端中输入另一个命令,因此我输入它(假设为echo done
)。
问题是,我输入echo done
和Enter,但当apt-get
完成时,echo done
并未执行。shell 返回一个提示符,但其输入缓冲区中没有任何内容。因此,bash
似乎在apt-get
运行时忽略了我的输入。这种“忽略”似乎不会发生在任何其他命令中。
我想弄清楚为什么会发生这种情况,以及我是否可以以某种方式改变这种行为。
答案1
您可能想尝试通过在命令的末尾添加&
. 来执行任何命令,例如:dolphin &
。这样,进程将在后台运行,终端可以自由操作。
更新:不过,似乎交互式进程(例如sudo apt-get install <package>
需要用户输入的进程,例如 sudo 的密码)只是在后台等待。可以使用命令重新访问它们fg
。