【发布时间】:2013-05-21 04:03:01
【问题描述】:
我正在编写一个脚本来计算目录中最旧文件的年龄。运行的第一个命令是:
OLDFILE=`ls -lt $DIR | grep "^-" | tail -1 `
echo $OLDFILE
输出包含的不仅仅是文件名。例如
-rwxrwxr-- 1 abc abc 334 May 10 2011 ABCD_xyz20110510113817046.abc.bak
第一季度/。如何在上述行的最后一个空格之后获得输出?这会给我文件名。我意识到需要进行某种字符串操作,但对 shell 脚本还是陌生的。
第二季度/。如何以分钟为单位获取此文件的年龄?
【问题讨论】:
-
How do I obtain the age of this file in minutes是什么意思? -
补充@Bill 的评论 - 在大多数 Unix/Linux 文件系统上,不存储文件的创建时间。因此,您可以找到上次更改文件数据的时间(其
mtime)或上次更改有关文件的元数据(权限、大小、所有者等)(其ctime),并且有时,最后一次读取文件(其atime) - 尽管出于性能原因,atime通常要么完全禁用,要么仅近似。