#!/bin/bash
#the vm shutdown tag
tag="15:00 PM"
#the "/usr/bin/input_azureuser.log" file contains snooze data in minutes
#snooze_time values will be "15,30 or 60" Minutes
snooze_time=`cat /usr/bin/input_azureuser.log |tail -n 1 | awk '{print $8}'`
/usr/bin/input_azureuser.log
:
#azureuser@puppetclient-ubuntu:~$ cat /usr/bin/input_azureuser.log
Mon Sep 6 11:24:14 UTC 2021 azureuser 15
Mon Sep 6 11:36:32 UTC 2021 azureuser 30
Mon Sep 6 13:51:03 UTC 2021 azureuser 15
Mon Sep 6 13:52:31 UTC 2021 azureuser 60
Mon Sep 6 14:41:40 UTC 2021 azureuser 15
如果 snooze/delay_time 值是 15/30/60 分钟,我想向标签添加相同的值并更新标签,如“15:15 PM”、“15:30 PM”和“16:00”。
答案1
您可以使用该date
命令为日期和时间添加相对偏移量。
date -d"90 minutes 15:00" '+%H:%M'
其中-d
,时间和调整是,+...
是输出格式。所以:
snooze_time=90
tag="15:00"
tag=`date -d"$snooze_time minutes $tag" '+%H:%M'`
会将标签更新为16:30
。
注意:使用 24 小时制的 AM/PM 是错误的。