要将证书到期日期和时间与当前日期和时间进行比较。如果当前日期和时间超过证书到期日期和时间。我需要重新启动服务。通过bash、command.will、iotedge系统,直接在else语句中重新启动工作。
openssl s_client -connect servername:443 2>/dev/null | openssl x509 -noout -dates | grep 'notAfter'命令以格式给出证书到期日期和时间,例如:4月9日:57:28 2022格林尼治标准时间与当前日期(如星期五) 05: 11 :21世界时2022
发布于 2022-03-11 06:07:24
您可以将给定日期转换为时间戳(UNIX时间),然后以相同格式将其与当前日期和时间进行比较:
#!/bin/bash
# Your command goes in the parenthesis here
exp_date=$(echo 'Jan 9 04:57:28 2022 GMT')
exp_date_ut=$(date -d "$exp_date" +%s)
current_date_ut=$(date +%s)
if (( current_date_ut > exp_date_ut ))
then
echo 'Do something...'
fi参考文献:
https://askubuntu.com/questions/1397033
复制相似问题