当我整理aws备份数据(带有$(aws s3 sync >>日志文件)时,当我“整理”文件时,数据看起来不错,但是如果我“ grep yada yada | sed yada yada backup.log> newfile” ',然后将其通过管道发送到'mail'或用'vi'查看,现在它在标准输出中显示了多余的字符。例如:
[猫到标准输出]
pnew
[猫重定向到文件]
$ cat aws.tail.log
Starting aws backup Wed Apr 17 00:01:01 EDT 2019
upload: zim/Beer/.zim/state.conf to s3://...
upload: Documents/testfile to s3://...
Completed aws backup Wed Apr 17 00:01:52 EDT 2019
当我通过$(cat daily_stats.txt | mail -s“ subject” $ EMAIL)或还通过$(mail -s“ subject” $ EMAIL)进行电子邮件发送时,这也会显示在电子邮件正文中
我已经尝试过滤掉^ M个字符,但它只能这样做。还尝试了: sed -r“ s / \ x1B [([0-9] {1,2}(; [0-9] {1,2})?)?[m | K] // g” 和 perl -p -e's / \ r // g'
而且还有多余的行(已完成0个文件,剩余〜0个文件(正在计算... ^ M)
任何人都知道如何在不增加爵士乐的情况下将我从“猫”看到的标准输出转换为电子邮件或文本文件吗?
谢谢!
答案 0 :(得分:0)
这应该有效:
cat aws.tail.log | col -b > aws.email.txt
我建议针对写此日志的工具提交有关自动检测非终端且不使用控制字符的工具的错误。