修改“文件”或“文件夹”的“创建时间”和“修改时间”
首先,在MAC OS上修改文件或者文件夹的「命名」,是不会修改文件或文件夹的“修改时间”的,对于单个文件来说,例如一个文本文件,只有它包括的内容发生了改变,该文件的“修改时间”才会发生改变。
有时候我们需要手动修改文件的“创建时间”或者“修改时间”,比如我希望对文件进行排序,我新建一个文件,按创建时间倒序排列,那么这个新建的文件就排在第一个位置,但是我希望将它放到其它之前已经创建文件列表的中间,那么就需要手动修改该文件的“创建时间了”。
修改的方法可以通过终端命令「setfile」来实现:
修改创建日期:setfile -d 'mm/dd/yy hh:mm:ss' filename
修改修改日期:setfile -m 'mm/dd/yy hh:mm:ss' filename
这里要注意,在终端输入 filename的时候,如果“文件名称” 包括空格符,需要用反斜杠进行转义,例如,在桌面新建一个文件名包括“空白符”的文件夹:test 1
1、错误的方式,文件名带有“空白符号”,输入回车后,会提示错误信息:
2、正确的方式,在“test”与“空白符号”之间加上转义字符,反斜杠: “\”:
提示:一个简单的方式,就是在输入 setfile -d mm/dd/yy hh:mm:ss 后,直接将文件拖到终端窗口里面,就会自动加上带有转义符号的文件名称。
修改后,查看文件夹的属性信息效果图,“创建时间”和“修改时间”都已经修补成功:2021年1月1日 星期五 下午6:18
3、最后,有些文章提到,可以通过“touch”命令来修改“文件”或“文件夹”的“创建时间”和“修改时间”,如下:
# 修改"创建时间"
touch -mt YYYYMMDDhhmm
# 修改"修改时间"
touch -t YYYYMMDDhhmm
但是经过测试,该命令只能修改"修改时间"。参考: