格式化rsync的"stats"参数

Format the "stats" parameter of rsync

我对脚本很陌生,但我正在为我的 NAS 编写一个小的 rsync 脚本。我现在正在尝试编辑 rsync "stats" 参数的输出。

因为这个参数给出了很多细节,我只需要最后的结果,所以我开始只保留我想要的部分:

sed -e '/Number/,$!d' $log > tmp && mv tmp $log

因此现在的输出如下所示:

enter image description here

那么我想从每一行中删除那种时间戳:

sed -e 's,.*] ,,' $log > tmp && mv tmp $log

所以现在看起来像这样(在 Outlook 中,当我通过电子邮件发送此结果时):

enter image description here

然后,我想我可以添加一个新行。我尝试了多种可能性,但它并不像我想要的那样工作。我不能给你看第三张照片。

你对我有什么建议吗:)?感谢您的帮助!

您可以使用 echo 命令向文件添加换行符:

> cat test.txt
1
2
3 > echo -e "\n" >> test.txt 
> cat test.txt
1
2
3

> 
  • -e 启用反斜杠解释
  • "\n" 被解释为换行符
  • >> 附加而不是覆盖

感谢拉尔斯的回答。你的代码做了我想要的,但问题仍然存在。

幸运的我,我发现了 outlook 的问题:https://naveensnayak.wordpress.com/2012/08/30/ms-outlook-messing-up-line-breaks/

所以我没有添加新行,而是对我的代码做了很小的改动:

sed -e 's,.*], ,' $log > tmp && mv tmp $log

因为括号 (]) 后有一个空格,并且我添加了第二个空格,现在我的文件在 Outlook 中看起来不错。