我正在写一个shell脚本,我需要我的脚本打开一个xterm窗口运行一个命令而不关闭xterm继续脚本。
代码基本上是菜单的一个大案例。
这是我的脚本
的一个例子...
example() {
echo -n "thingy > "
read thingy
echo -n "thingy1> "
read thingyl
xterm -hold -e *el command*
menux
}
...
问题:
脚本打开xterm执行命令并保持窗口打开但不会继续脚本,如果我按ctrl + c它会返回shell
答案 0 :(得分:1)
此更改
nohup xterm -hold -e *el command* &
会做你想做的事。 nohup
告诉shell在父进程退出时不向此子进程发送HUP(1)信号。 &
使xterm
命令在后台运行,以便脚本可以继续。 man nohup
有详细信息。
如果您想取消输出,则以下内容会将所有输出转移到/dev/null
,而2>&1
会确保将stderr
定向到同一位置。如果要查看错误,请不要执行第二次重定向。
nohup xterm -hold -e *el command* > /dev/null 2>&1 &
man bash
详细介绍了重定向。