2013-11-14 53 views
0

怎麼可能這個和輸出innobackupex輸出運行到一個文件中(但仍發送輸出到顯示器)?運行innobackupex用gzip和管顯示輸出到文件

innobackupex --user=root --password=pass --databases="db" --stream=tar ./ | gzip -c -1 > /var/backup/backup.tar.gz 

我需要輸出中的innobackupex在最後一行到一個文件... completed OK!登錄?我怎樣才能做到這一點?

+0

您正在使用哪個innobackup的版本關閉?您是使用原始版本,授權版本還是Percona修改的版本? – Charles

+0

'http:// www.percona.com/downloads/XtraBackup/XtraBackup-2.1.3/deb/wheezy/x86_64/percona-xtrabackup-dbg_2.1.3-608.wheezy_amd64.deb' – clarkk

+0

OKay,這是Percona的版本。我很確定你要找的有用輸出是通過'stderr'發出的,所以任何重定向'stderr'的東西都應該捕獲它。也許'發球'到一個文件? – Charles

回答

0

前置

2> >(tee file) 

你的命令。

1

我也注意到將xtrabackup的「OK」輸出保存到日誌文件有點困難,因爲使用tty的Perl腳本。這是對我有用的東西。

如果您需要在命令行中執行innobackupex,你可以這樣做:

nohup innobackupex --user=root --password=pass --databases="db" --stream=tar ./ | gzip -c -1 > /var/backup/backup.tar.gz 2>/path/mybkp.log 

,如果你需要的腳本,並得到一個確定的消息,你可以這樣做:

/bin/bash -c "innobackupex --user=root --password=pass --stream=tar ./ | gzip -c -1 > /var/backup/backup.tar.gz" 2>/path/mybkp.log 

請注意,在第二個命令,雙引號前2>