2017-06-13 11 views
0

注:Pramikoのようなモジュールには興味がありませんバイナリストリームをsshとPythonを使ってリモートサーバにパイプする方法はありますか?

ローカルファイルを作成せずにリモートサーバにバイナリデータを保存しようとしています。私は、ファイルから読み込んだが、後、私はデータフィードでそれを置き換えるよ試験として

ps = subprocess.Popen(['cat', "/delta/ftp/GSM.PRICINT_TBL.dmp"], stdout=subprocess.PIPE, stderr=subprocess.PIPE) 

私は、私が使用し

ssh = subprocess.Popen(["ssh", '-XC', '-c', 'blowfish-cbc,arcfour', '[email protected]', 'echo - >/tmp/test.log'], 
           shell=False, 
           stdin = ps.stdout, 
           stdout=subprocess.PIPE, 
           stderr=subprocess.PIPE) 
     result = ssh.stdout.readlines() 
     if result == []: 
      error = ssh.stderr.readlines() 
      print >>sys.stderr, "ERROR: %s" % error 
     else: 
      print result 

リモートサーバーにデータをsshをしたい次のステップ「を - 'だからcatは標準入力を受け入れることができます。それを動作させるためにどのように任意のアイデア

- 期待される結果は、/tmp/test.log内のデータですが、私は唯一の

を参照してください '\ n' は?

答えて

0

は、私はそれを考え出し:

、リモートサーバー上の
echo 'test'|ssh -XC -c blowfish-cbc,arcfour [email protected] -T 'gzip - >/tmp/test.gz' 

cat - > /tmp/test.txt 
:私たちは、リダイレクト後にスペースを必要とする catについて

zcat /tmp/test.gz 
test 

関連する問題