如何在xterm启动时运行命令,即启动xterm终端时该命令已经执行?

我已经编辑了.bashrc文件以添加以下行:

xterm“ ls”

但这是行不通的。

请建议我该怎么做才能达到目的。

谢谢。

最佳答案

根据bash手册,~/.bashrc用于交互式外壳。 xterm运行外壳程序,因此也许您的“不起作用”导致了xterm的连锁。

xterm程序设置了这些environment variables,这些脚本可用于编写脚本:XTERM_VERSIONXTERM_SHELL。在您的~/.bashrc文件中,您可以使用前者只运行一次xterm -ls

if [[ -z "$XTERM_VERSION" ]]
then
    xterm -hold -e ls &
fi


这似乎是您要的:


如果不从现有的xterm运行,它将运行一个xterm
ls完成后,它可以防止xterm关闭。


在shell启动时显示ls的一种更有用的方法是在启动时在每个shell中运行ls(对于这种情况,您不需要运行单独的xterm)。同样,您可以使用环境变量执行一次(以防您运行bash来创建子外壳):

if [[ -z "$XTERM_ONCE" ]]
then
    export XTERM_ONCE=$(date)
    ls
fi

关于startup - 如何在xterm启动时运行命令?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31088981/

10-16 19:05