これが私が達成したいことです:
- 5つのタブがあるgnomeターミナルを開きたい
- 各タブで一連のコマンド(5〜10コマンド)を自動的に実行したい
最初のタブ:大文字と小文字を区別して表示し、その後1つ以上のコマンドを実行します
2番目のタブ:しなければなりませんサーバーにログインして、いくつかのコマンドを実行します3番目のタブ:一部のコマンドのみを実行する
gnome-terminal --geometry=260x25-0+0 --tab -e "csh -c "ct setview myViewName; cal"" –tab --tab --tab
(正常に動作し、ビューは設定されていますが、その後コマンドは実行されません)
代わりにこの方法でこれを実行して、以下のスクリプトで実行しようとしました:
gnome-terminal --geometry 125x18-0-26 --tab -t "some title" -e /home/ekido/Desktop/MyScripts/myScript
#!/usr/bin/expect
exec gnome-terminal --geometry 125x49-0+81 –tab
spawn ssh [email protected]
expect "password"
send "*******r"
expect "[email protected]:~>"
send “some commandr"
expect "[email protected]:~>"
send “some command"
interact
exec gnome-terminal --geometry 125x49-0+81 –tab
を削除すると 例の行と他のファイルからスクリプトを呼び出すと、正常に機能します—サーバーにログインし、すべてのコマンドを実行します。誰かが私がこれを解決するのを手伝ってもらえますか?
すべてのタブに対して呼び出すスクリプトを作成することはできません。これは、最終的にそれぞれ5〜7個のタブを持つ5つの端末があるためです。つまり、作成するスクリプトは25〜30になります(役立つよりもコストがかかります)。私の問題で)。
承認された回答:
これは私のマシンで機能するようです:
gnome-terminal --geometry=260x25-0+0 --tab -e "bash -c 'date; read -n1'" --tab -e "bash -c 'echo meow; read -n1' " --tab --tab
-eによって実行されたプロセスの実行が完了するとすぐに、プロセスが終了することに注意してください。この場合、bashがロードされ、渡されたコマンドが実行され、すぐに存在します。ユーザー入力を待つためにreadステートメントを入れました。このように、キーを押すまでこれらのタブは閉じないので、この例で確認できます。それらがないと、他の2つのタブの実行と終了が速すぎるため、2つのタブだけが開いているように見えます。