从脚本中的字符串获取纪元

我有一个带有内容的openvpn状态文件:

OpenVPN STATISTICS
Updated,Tue Nov  5 16:45:50 2019
...

我想在脚本中解析更新时间,以了解vpn是否打开。

这是我的脚本:

#!/usr/bin/env bash

logDate=$(sudo cat /home/ubuntu/vpn/openvpn-status.log | grep Update| awk -F "," '{print $2}') 

logEpoch=$(date -d $logDate +"%s")

当我在终端中运行相同的命令时,它可以正常工作,但是当我运行脚本时,它给我一个错误:

date: extra operand ‘5’
Try 'date --help' for more information.
raypuppet 回答:从脚本中的字符串获取纪元

我认为使用变量时需要添加引号。 该脚本应适用于:

#!/usr/bin/env bash

logDate=$(sudo cat /home/ubuntu/vpn/openvpn-status.log | grep Update| awk -F "," '{print $2}') 

logEpoch=$(date -d "$logDate" +"%s")
echo "$logEpoch"

解释在这里:mywiki.wooledge.org/Quotes – @Ed Morton

本文链接:https://www.f2er.com/3156196.html

大家都在问