したがって、このコマンドを実行して拒否する必要があります。
innobackupex-1.5.1 --user=root --password=**** --stream=tar ./ | gzip - > /data/myfile.tar.gz
出力をファイルにパイプするにはどうすればよいですか?
このコマンドの最後に別の>>を追加すると、gzipデータのみが追加されます。
より具体的には、innobackupexには進行状況出力があります。この出力をファイルに追加/パイプしたい(エラーだけでなく)この場合、gzipはすでにパイプされているため、これを行う一般的な方法(>>を追加)は機能しません。
答え1
innobackupex
進行状況は出力されません。それ以外の場合はファイルstdout
に残ります。tar.gz
おそらくstderrに出力するので(スクリプトを少し見てみるとこれを確認できます)、stderrをリダイレクトする必要があります。
innobackupex ... 2>> progress.log | gzip > file.tar.gz
答え2
innobackupexでSTDERRをキャプチャするという意味ですか?あなたの質問は明確ではありません。
innobackupex-1.5.1 --user=root --password=**** --stream=tar ./ 2> /path/to/file | gzip - > ...
答え3
サブシェルで次のコマンドを実行してこれを行います。
( innobackupex-1.5.1 --user=root --password=**** --stream=tar ./ \
| gzip - > /data/myfile.tar.gz ) 2> errors
答え4
1)圧縮ファイルと一般ファイル用に出力をgzipにパイプする場合の使用例は次のとおりですtee
。
ls -a ~ | tee ls.txt - | grep "^\."
これにより、ホームディレクトリにある「隠し」ドットファイルがすべて印刷されますが(grepのため)、出力全体はls -a
ls.txtに保存されます。
man tee
完全な説明についてはを参照してください。
2) 標準出力ストリームに標準エラーストリームを含めたい場合は、2>&1
コマンドに追加します。