Quiero escribir un script que abra una terminal con diferentes pestañas, iniciar sesión en un servidor usando sshen cada pestaña y ejecutar un comando en cada pestaña. Por ejemplo: htop.
El siguiente script abre un terminal con 4 pestañas todas iniciadas en el servidor. Pero si trato de agregar el htopcomando en la cmd=línea, ya no funciona ...
#bin/bash
tab="--tab"
cmd="bash -c 'ssh user@host';bash"
foo=""
for i in 1 2 3 4; do
      foo+=($tab -e "$cmd")         
done
gnome-terminal "${foo[@]}"
exit 0
He intentado esto ...
cmd="bash -c 'ssh user@host htop';bash"
... porque ssh --helpdice que la sintaxis para sshes:
uso: ssh [usuario @] nombre de host [comando]
fuente

bash -c 'ssh -t user@host "htop;bash"'sería mejor, pero no veo por qué estás tratando de freír esto en una envoltura de bash en primer lugar. No es obligatorio: solo está ejecutando un comando localmente.bashporread.