Quero escrever um script que abra um terminal com guias diferentes, faça logon em um servidor usando ssh
em cada guia e execute um comando em cada guia. Por exemplo: htop
.
O script abaixo abre um terminal com 4 guias, todas conectadas no servidor. Mas se eu tentar adicionar o htop
comando na cmd=
linha, ele não funcionará mais ...
#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
Eu tentei isso ...
cmd="bash -c 'ssh user@host htop';bash"
... porque ssh --help
diz que a sintaxe para ssh
é:
uso: ssh [usuário @] hostname [comando]
fonte
bash -c 'ssh -t user@host "htop;bash"'
seria melhor, mas não vejo por que você está tentando fritar essa coisa em um invólucro de festança em primeiro lugar. Não é necessário - você está executando apenas um comando localmente.bash
-loread
.