Eu uso o rsync para fazer backup de meus dados de um servidor para outro. Isso funciona muito bem.
rsync -aktvu -e 'ssh -p 22' --modify-window=1 --progress $SOURCE $USER@$SERVER:$DESTINATION
A saída exibe o que foi copiado:
building file list ...
11 files to consider
./
server/
server/myfile.txt
3152 100% 0.00kB/s 0:00:00 (xfer#1, to-check=8/11)
server/test/
server/test/logfile01
8266 100% 7.88MB/s 0:00:00 (xfer#2, to-check=6/11)
server/test/logfile07
41004 100% 39.10MB/s 0:00:00 (xfer#3, to-check=5/11)
server/test/logfile08
318 100% 310.55kB/s 0:00:00 (xfer#4, to-check=4/11)
server/test/logfile09
8262 100% 7.88MB/s 0:00:00 (xfer#5, to-check=3/11)
server/test/logfile30
40325 100% 12.82MB/s 0:00:00 (xfer#6, to-check=2/11)
server/test/logfile31
792 100% 193.36kB/s 0:00:00 (xfer#7, to-check=1/11)
server/test/logfile32
3152 100% 769.53kB/s 0:00:00 (xfer#8, to-check=0/11)
sent 105902 bytes received 214 bytes 14148.80 bytes/sec
total size is 105271 speedup is 0.99
Eu gostaria de obter essa saída e salvá-la em um arquivo para referência. Então eu tentei isso,
test_output=$(rsync -aktvu -e 'ssh -p 22' --modify-window=1 --progress $SOURCE $USER@$SERVER:$DESTINATION)
getscript() {
pgrep -lf ".[ /]$1( |\$)"
}
getscript "sync.sh" >/dev/null && echo "sync.sh" $test_output >> outputfile.txt;
Funciona muito bem, mas a saída está toda em uma linha. Não é bem recuado como acima. Como posso dar saída para que fique bem recuado?
tks