加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

使用bash测试文件日期

发布时间:2020-12-15 18:51:02 所属栏目:安全 来源:网络整理
导读:我试图用if语句中的bash来测试一个文件创建的时间(以秒为单位).我需要创建日期,而不是修改. 你有什么想法如何做到这一点,而不使用像grep这样的命令? 我恐怕我无法回答创作时间的问题,但是对于上次修改时间,您可以使用以下内容来获取时间日期,以秒为单位,因
我试图用if语句中的bash来测试一个文件创建的时间(以秒为单位).我需要创建日期,而不是修改.

你有什么想法如何做到这一点,而不使用像grep这样的命令?

我恐怕我无法回答创作时间的问题,但是对于上次修改时间,您可以使用以下内容来获取时间日期,以秒为单位,因为文件名是最后一次修改:
date --utc --reference=filename +%s

所以你可以这样做:

modsecs=$(date --utc --reference=filename +%s)
nowsecs=$(date +%s)
delta=$(($nowsecs-$modsecs))
echo "File $filename was modified $delta secs ago"

if [ $delta -lt 120 ]; then
  # do something
fi

等等..

更新
一个更加骄傲的做法(再次修改时间):how do I check in bash whether a file was created more than x time ago?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读