2012-08-05 123 views
1

我正在尝试创建一个BASH脚本,它将首先打开一个新终端,然后在该新终端中运行脚本的其余部分。如果可能的话,我希望这是一个完整的脚本。用Bash脚本启动新终端

我不想的konsole -e因为这需要我做一个单独的脚本(我认为)

+4

http://whathaveyoutried.com/ – 2012-08-05 19:15:23

+0

的'-e'参数(例如)'的gnome-terminal'将是有益的。 – huon 2012-08-05 19:18:10

+0

你是不正确的单独的脚本的东西。 (检查[konsole手册页](http://manpages.ubuntu.com/manpages/hardy/man1/konsole.1.html)中'-e'的描述 – huon 2012-08-05 19:21:24

回答

2

what have you tried - that was great

这并不复杂的事情:

#!/bin/bash 
[ ! -f /tmp/$(basename $0) ] && cp $0 /tmp/ && konsole -e $0 && exit 
rm /tmp/$(basename $0) 
    # --- put your code here --- # 

    echo "TESTING" 

    # --- put your code here --- # 

sleep 3s 

它所它会将脚本复制到/ tmp目录并在源脚本上运行konsole -e,删除临时文件,检查文件是否不存在,并在执行代码后休眠3秒钟然后退出。

你甚至可以修改/ tmp /脚本并运行它。

+0

+1您的答案正是我所寻找的解决方案。我想更好地理解它。为什么/ tmp /涉及?这个怎么用?谢谢 – MountainX 2013-06-19 22:13:59

0

我想你可以试试这个:

#!/bin/bash 
echo "<your script/*eg. ./bashfile.ext*/>" | xterm