開発環境の起動を自動化する方法を探しています。起動する必要がある 3 つの仮想マシンがあり、それぞれssh
の仮想マシンで VPN を開く必要があります。
これまでのところ、私はそれらを開始して、なんとかそれらにsshすることができました:
#!/bin/sh
virsh start virtual_1
virsh start virtual_2
virsh start virtual_3
sleep 2m
gnome-terminal --title "virtual_3: server" -x ssh root@192.168.1.132 &
gnome-terminal --title "virtual_2: 11.100" -x ssh root@192.168.11.100 &
gnome-terminal --title "virtual_1: 12.100" -x ssh root@192.168.12.100 &
openvpn を開始する各端末で追加のコマンドを実行するにはどうすればよいですか?
echo 1
簡単にするために、VPNを開始する代わりに、各端末で試しています。
端末の起動時に複数のコマンドを次のように実行できることがわかりました。
gnome-terminal -x bash -c "cmd1; cmd2"
したがって、1つの端末をシンプルに保つために、次のように変更しました。
gnome-terminal --title "virtual_3: server" -x ssh root@192.168.1.132 &
に:
gnome-terminal --title "virtual_3: server" -x bash -c "ssh root@192.168.1.132 ; echo 1" &
しかし1
、virtual_3 のターミナルには出力されませんでした。次に、ターミナルの準備が整う前に、コマンドの実行が速すぎるのではないかと考えたので、追加してみました&&
:
gnome-terminal --title "virtual_3: server" -x bash -c "ssh root@192.168.1.132 &&; echo 1" &
しかし、それも結果をもたらしませんでした。