¿Cuál es la diferencia entre `xterm -e $COMMAND` y `$COMMAND` dentro de `xterm`?

¿Cuál es la diferencia entre `xterm -e $COMMAND` y `$COMMAND` dentro de `xterm`?

Me sorprende que haya diferencias entre ejecutar un$COMMAND en xtermy corriendo xterm -e $COMMAND.

Como ejemplo: si ejecuto tmuxcomo un programa dentro de xterm, obtengo un comportamiento diferente que cuando lo invoco tmuxen una xterminstancia en ejecución. Específicamente, vimobtiene diferentes colores (la invocación dentro de una ejecución xtermse tmuxcomporta de acuerdo con mi configuración vim+tmux+xterm, mientras que la ejecución en una xterm -e tmuxproporciona colores no configurados).

No estoy tratando de arreglar el tmuxproblema específicamente; no es por eso que estoy aquí. Quiero saber exactamente cuándo tendré problemas entre ejecutar un comando xtermy ejecutar un comando xterm -e $COMMANDpara poder evaluar por mí mismo si me interesa o no usarlo xtermcomo interfaz gráfica para accesos directos a aplicaciones de terminal.

¿Cuál es la diferencia entre xterm -e $COMMANDy xterm--> $COMMAND?

Respuesta1

cuando corresxterm -e $COMMAND, no ejecuta tucaparazón(que está haciendo la inicialización). simplemente corre$COMMAND(sin ejecutar elcaparazón).

Elpagina del manualdice

   -e program [ arguments ... ]
           This option specifies the program (and its command line
           arguments) to be run in the xterm window.

ymás tarde

   XTERM_SHELL
        is set to the pathname of the program which is invoked.  Usually
        that is a shell program, e.g., /bin/sh.  Since it is not
        necessarily a shell program however, it is distinct from "SHELL".

información relacionada