为了账号安全,请及时绑定邮箱和手机立即绑定

比较两个文件的日期 Python

比较两个文件的日期 Python

紫衣仙女 2023-06-27 14:08:30
我正在比较来自远程计算机的 Python 中的两个文件的日期(如果从今天到昨天的最后修改时间是 24 小时):我正在尝试通过这种方式:commandcomp = 'echo `stat -c%Y /var/tmp/check_ipsleft/today.txt /var/tmp/check_ipsleft/yesterday.txt` | bc'outputcomp = check_output(commandcomp, shell=True)在本地计算机中,此命令有效:`echo `stat -c%Y /var/tmp/check_ipsleft/today.txt /var/tmp/check_ipsleft/yesterday.txt` | bc` /bin/sh: -c: línea 0: EOF inesperado mientras se buscaba un ``' coincidente/bin/sh: -c: línea 1: error sintáctico: no se esperaba el final del ficheroTraceback (most recent call last):  File "checkipleft.py", line 46, in <module>    outputcomp = check_output(commandcomp, shell=True)  File "/opt/python-dsmc/lib/python2.7/subprocess.py", line 573, in check_output    raise CalledProcessError(retcode, cmd, output=output)subprocess.CalledProcessError: Command 'echo "stat -c%Y `/var/tmp/check_ipsleft/today.txt" - "stat /var/tmp/check_ipsleft/yesterday.txt" | bc' returned non-zero exit status 1
查看完整描述

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

无需调用 shell 命令即可检索文件的修改时间:

os.stat(filename)

提供一个名称元组,其中包含有关文件的所有类型的元数据:

os.stat_result(st_mode=33204, st_ino=33035339, st_dev=64769, st_nlink=1, st_uid=1000, st_gid=1000, st_size=589825, st_atime=1597670243, st_mtime=1597662878, st_ctime=1597670176)

如文档所述,该st_mtime字段包含最近内容修改的时间作为 UNIX 时间戳。

您可以用它进行任何类型的计算,例如:

os.stat('1.txt').st_mtime - os.stat('2.txt').st_mtime


查看完整回答
反对 回复 2023-06-27
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信