sshを介したシェルスクリプトのリモートコマンド

RatDon

頻繁に必要なコマンドを実行するシェルスクリプトを作成しようとしています。公開鍵と秘密鍵のペアを使用してパスワードプロンプトをスキップするようにsshログインを行いました。そして、いくつかの検索の後、私は次のようないくつかのコードを実行することができます:

ファイル:ssh.sh

ssh -X [email protected] << EOF
cd /root/myDir
gedit a.c b.c
EOF

しかし、次のように入力しても違いはわかりません。

ssh -X [email protected] << EOF
cd /root/myDir
gedit a.c b.c &
EOF

&任意のdifference.Withを行わない&一般のgeditを実行した後、それが背景に送信されますと、プロンプトが来ます、。しかし、geditの後にプロンプ​​トが表示されません。(次の行にあるものはすべて実行されますが、私が置いた場合のようにecho "Hello"、表示されHelloます。)

ここで何が問題になっていますか?他に方法はありますか?SSHを実行し、シェルスクリプトを介してコマンドを実行したいと思います。しかし、シェルスクリプトの実行が終了した後にログアウトしたくありません。上記のスクリプトのように繰り返されない独自のコマンドをいくつか実行した後、手動でログアウトしたいと思います。

Gilles'SO-悪であることをやめなさい '

がない&場合、リモートで実行しているスクリプトは「に変更してから/root/myDir実行しgedit、終了するのを待ちます」と表示します。のバリアント&gedit、終了するのを待たないように言っています。いずれにせよ、シェルはスクリプトの最後のコマンドを実行すると終了します。

スクリプトを実行してから、インタラクティブに入力するコマンドをさらに実行する場合は、最後にインタラクティブシェルを実行する必要があります。

ssh -Xt [email protected] 'cd /root/myDir && gedit a.c b.c; exec bash'

このオプション-tは、SSHにサーバー上に仮想端末をセットアップするように指示します。デフォルトでは、リモートコマンドを渡して実行する場合はそれを行いません。exec bash最後に、シェルに、bashの新しいインスタンスに置き換えるように指示します。これは、入力が端末からのものであるため、対話型シェル(プロンプトの表示、コマンドのリッスンなど)になります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

sshを介したシェルスクリプトのリモートコマンド

シェルスクリプトを使用したリモートマシン上の複数のコマンド

SSHを介したリモートgitコマンド(jenkinsビルドステップリモートssh gitコマンド)

SSHを介したリモートシェルスクリプト実行内での変数の割り当て

SSHトンネルを介したリモートマシンへのjmx / jstatdアクセス

シェルスクリプトでSSHコマンドを使用中にエラーが発生しました

リモートマシンのシェルスクリプト内でコマンドを実行し、ローカルマシンで出力を取得します

リモートマシンにsshするシェルスクリプトを記述してコマンドを実行する

リモートマシンで変数を使用してsshおよびシェルスクリプトでコマンドを実行する

forループを使用したリモートSSHコマンド

sshコマンドからシェルスクリプトを介してノードファイルを実行します

別のsshユーザーとしてホストからリモートマシンにコピーする場合、ansibleコマンド/シェルを介したrsyncは永久に待機します

makeコマンドを実行した後、リモートマシンで実行されているシェルスクリプトが終了します

複数のリモートサーバーでSSH経由でコマンドを実行するシェルスクリプト

シェルスクリプトを介したリモートMongoDB接続

ビルドが成功した後、リモートマシンのワークスペースからシェルスクリプトを実行する(Jenkins)

SSH / Paramikoで別のシェルを使用してコマンド/スクリプトを実行します

シェルスクリプトを介してhbaseシェルコマンドを実行する

curlコマンドがbashのシェルスクリプトを介して実行されない

curlコマンドがbashのシェルスクリプトを介して実行されない

シェルスクリプトの/ wパラメータを使用したsedコマンド

スクリプトなしでAzureのPowershellを介してリモートコマンドを実行する

tcpdump -zpostrotate-シェルスクリプトを使用したコマンド

GNU-Make:シェルとしてsshを使用したリモートコマンド?

リモートマシンは、VSCode-Remote-SSHターミナルを介してアクセスしているときに、プライベートリポジトリのgitユーザー/パスワードを要求しません

シェルスクリプトを使用してコマンドをSSH端末にエコーまたは貼り付ける方法

パイプ、リダイレクト、リモート接続を使用したシェルコマンドの理解に役立つ必要があります

SSHのコマンドのいずれかがゼロ以外の値を返した場合にシェルスクリプトを終了する方法

Docker-sshトンネリングを介したリモートDockerデーモンへのマシンアクセス

TOP 一覧

  1. 1

    Unity:未知のスクリプトをGameObject(カスタムエディター)に動的にアタッチする方法

  2. 2

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  3. 3

    Ansibleで複数行のシェルスクリプトを実行する方法

  4. 4

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  5. 5

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  6. 6

    GoDaddyでのCKEditorとKCfinderの画像プレビュー

  7. 7

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  8. 8

    Chromeウェブアプリのウェブビューの高さの問題

  9. 9

    モーダルダイアログを自動的に閉じる-サーバーコードが完了したら、Googleスプレッドシートのダイアログを閉じます

  10. 10

    Windows 10の起動時間:以前は20秒でしたが、現在は6〜8倍になっています

  11. 11

    Reactでclsxを使用する方法

  12. 12

    ファイル内の2つのマーカー間のテキストを、別のファイルのテキストのセクションに置き換えるにはどうすればよいですか?

  13. 13

    MLでのデータ前処理の背後にある直感

  14. 14

    グラフからテーブルに条件付き書式を適用するにはどうすればよいですか?

  15. 15

    Pythonを使用して同じ列の同じ値の間の時差を取得する方法

  16. 16

    mutate_allとifelseを組み合わせるにはどうすればよいですか

  17. 17

    ネットワークグラフで、ネットワークコンポーネントにカーソルを合わせたときに、それらを強調表示するにはどうすればよいですか?

  18. 18

    テキストフィールドの値に基づいて UIslider を移動します

  19. 19

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  20. 20

    PowerShellの分割ファイルへのヘッダーの追加

  21. 21

    ソートされた検索、ターゲット値未満の数をカウント

ホットタグ

アーカイブ