Debianuser Asked: 2016-07-21 06:09:40 +0800 CST2016-07-21 06:09:40 +0800 CST 2016-07-21 06:09:40 +0800 CST 没有 date -d 的 AIX 上的时间戳比较 772 我在 AIX 7 上有一个运行数据库查询的 bash 脚本,我得到的输出是以下格式的时间戳:201607130319. 现在我想将时间戳与当前时间(date +%Y%m%d%H%M- 201607201802)进行比较,并检查以分钟为单位的差异。我基本上需要知道差异是否超过10分钟。 我知道我可以在 Linux 上使用date -d,但在 AIX 上不可用。我也不允许在服务器上安装任何东西,所以我在这里有什么选择? unix bash aix date timestamp 1 个回答 Voted Best Answer glenn jackman 2016-07-21T06:46:42+08:002016-07-21T06:46:42+08:00 Perl 可能已安装,所以你可以这样做 timestamp=$( some process ) # timestamp=201607130319 perl -se ' use Time::Local; if ($ts =~ /^(\d{4})(\d\d)(\d\d)(\d\d)(\d\d)$/) { $time = timelocal(0,$5,$4,$3,$2-1,$1-1900); $now = time; if (abs( $time - $now ) > 600) { print "more than 10 minutes\n"; } } ' -- -ts="$timestamp"
Perl 可能已安装,所以你可以这样做