Linux:如何在运行脚本时自动打开终端

时间:2015-04-01 01:33:26

标签: linux bash xterm

好的,所以我要编写一个脚本,当我双击它时,我需要它自动打开xterm(类似于Windows上的BAT)。它需要在包含xterm的任何桌面上工作。因此,例如它会检查它是否已经在xterm中运行,如果不是它将在xterm中重新打开,如果是脚本将继续其进程。对不起,如果已经被问过,但我找不到任何关于我的生活。

2 个答案:

答案 0 :(得分:1)

您可以按照以下方式执行此操作:

xterm -e program [ arguments ... ]

来自linux手册页......

  

此选项指定程序(及其命令行参数)   在xterm窗口中运行。它还设置窗口标题和图标   如果既不是-T,那么name也是正在执行的程序的基本名称   在命令行中给出了-nn。这必须是最后一个选项   命令行。

答案 1 :(得分:0)

请记住,其他脚本可以设置环境变量(包括那些因错误原因而完成的变量),您可以检查xterm设置的一个环境变量。例如(见manual):

  

<强> XTERM_VERSION   设置为 -version 选项显示的字符串。那是   通常是用于构建的X Window库的标识符   xterm,后跟括号中的xterm补丁号。补丁   number也是辅助设备响应的一部分   属性(DA)控制序列(参见Xterm控制序列)。

该变量是在2005年添加的(patch #202),因此它应该可以在您有权访问的任何系统上使用。

在脚本中,您可以在一行中执行此检查,例如,

#!/bin/sh                                                           
test -z "$XTERM_VERSION" && exec xterm -e $0 $*
view $*

检查是否设置了给定变量,如果没有,则将控制转移到xterm,传递从一开始就运行脚本所需的信息。