如何在xterm启动时运行命令?

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

我编辑了.bashrc文件来添加这一行:

xterm“ls”

但这不起作用.

请建议我该怎么做才能实现这一目标.

谢谢.

最佳答案 根据bash手册,〜/ .bashrc用于交互式
shell. xterm运行一个shell,所以也许你的“不工作”会导致一连串的xterm.

xterm程序设置了这些对脚本有用的environment variables:XTERM_VERSION和XTERM_SHELL.在〜/ .bashrc文件中,您可以使用前者仅运行xterm -ls一次:

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

这似乎是你要求的:

>如果没有从现有的xterm运行,它将运行xterm
>它会阻止xterm在ls完成时关闭.

在shell启动时显示ls的一种更有用的看似方式是在每个shell启动时运行ls(对于这种情况,你不需要运行单独的xterm).同样,您可以使用环境变量执行此操作一次(如果您运行bash以创建子shell):

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