リモートマシン上のcプログラムのローカルマシンへのパイプ出力


0

私はec2インスタンス(ubuntu)でcプログラムを実行しています。私はそのCプログラムの出力をキャプチャして、それを私のローカルマシンのExcelファイルに保存したいのです。

私はすでにここに記載されているものを試してみました コマンドの(巨大な)出力をリモートマシンに直接scpするにはどうすればよいですか しかし、私のec2インスタンスから自分のローカルマシンに接続しようとしても、何も起こりません。それは私が避けられないctrl + cまでハングするだけです

私のローカルマシンはMacです。私は自分のIPアドレスとwhoamiがどのアカウントにsshをするべきかを見るためにifconfigを実行しました。動いていない。リモートマシンから自分のローカルマシンに出力をパイプするための適切な構文は何ですか?

回答:


2

あなたのローカルマシンは、おそらくファイアウォールの内側(あるいは少なくともネットワークアドレス変換)にあり、外部からはアクセスできない。しかし、あなたはあなたのローカルコンピュータから接続を開始し、プログラムを実行し、そして戻ってくる出力をキャプチャすることができるはずです。このようなもの:

ssh -i whatever ecuser@ecaddress '/path/to/c-program' >outputfile

"ssh -i whatever ecuser @ ecaddress"を通常使用するsshコマンドに、 "/ path / to / c-program"を実行するプログラムの実際のファイルシステムの場所に、 "outputfile"を(ローカルの)に置き換えます。 )あなたが出力を保存したいファイル名。プログラムにコマンドライン引数が必要な場合は、プログラムパスの後に追加します。入力が必要な場合は、ssh接続で入力するか、入力リダイレクトを使用します(注:引用符の内側のリダイレクトはec2インスタンスで発生しますが、外側のリダイレクトはローカルコンピュータで発生します)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.