如何以粗体字母获取shell脚本的日志

问题描述

我编写了一个 Bash 脚本来将本地文件夹中的所有文件同步到 s3 存储桶。当脚本通过 cron 作业运行时,所有日志都会发送到电子邮件。电子邮件输出如下所示:

---------------开始于:2021 年 3 月 3 日星期三 10:56:01 +04--------- -----------------
开始上传到 s3 存储桶 mohsin7007 已完成 1.8 KiB/15.5 KiB (5.2 KiB/s),剩余 3 个文件 上传:../home/mohsin/Desktop/data2s3/README.md 到 s3://mohsin7007/README.md 已完成 1.8 KiB/15.5 KiB (5.2 KiB/s),剩余 2 个文件 已完成 12.9 KiB/15.5 KiB (15.0 KiB/s),剩余 2 个文件 上传:../home/mohsin/Desktop/data2s3/LICENSE 到 s3://mohsin7007/LICENSE 已完成 12.9 KiB/15.5 KiB (15.0 KiB/s),剩余 1 个文件 已完成 15.5 KiB/15.5 KiB (18.0 KiB/s),剩余 1 个文件
------------------------完成时间:2021 年 3 月 3 日星期三 10:56:01 +04 ------------ ---------------

我想将“开始于”和“完成于”行加粗。所以在查找某个日期的日志时会更具可读性,如下所示:
-------------------------开始于:2021 年 3 月 3 日星期三 10:56:01 +04 -------- -------------------

我已使用 Tput 实用程序将这些行加粗,但是,问题是当我在终端中运行脚本时,结果如预期。但是,当我打开日志文件或查看电子邮件中的日志时,结果不是粗线。 你们能不能帮我看看我怎样才能得到粗体的上述行 我也在这里粘贴我的脚本。

#!/bin/sh
DEST=mytestingbucket8719
SOURCE=/home/sham/Desktop/data2s3
Date=`date`
bold=$(tput bold)
normal=$(tput sgr0)

echo "       "

echo "$bold-----------------------Started at: $Date---------------------------$normal"

echo "Start uploading to s3 bucket" $BUCKET 

aws s3 sync $SOURCE s3://$DEST

echo "complete uploading to s3 bucket" $BUCKET

echo "$bold------------------------Completed at: $Date---------------------------$normal"

echo "       " 

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)