繁体   English   中英

比较两个文件的日期 Python

[英]Compare dates of two files Python

我正在从远程机器比较 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 fichero
Traceback (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

无需调用 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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM