更改目录中所有文件的所有日期

Al *_*ath 3 command-line date

我有一个包含以下文件的目录:

$ ls -l  
-rw-r--r-- 1 myusername myusername 4129128 Aug  7  2013 A-32.JPG  
-rw-r--r-- 1 myusername myusername 4106876 Aug  7  2013 A-37.JPG  
-rw-r--r-- 1 myusername myusername 4192644 Aug  7  2013 A-38.JPG  
-rw-r--r-- 1 myusername myusername 4324212 Aug  7  2013 A-42.JPG  
-rw-r--r-- 1 myusername myusername 4147792 Aug  7  2013 A-44.JPG  
-rw-r--r-- 1 myusername myusername 4271768 Aug  7  2013 A-53.JPG  
-rw-r--r-- 1 myusername myusername 4330804 Aug  7  2013 A-86.JPG  
-rw-r--r-- 1 myusername myusername 4299692 Aug  7  2013 A-87.JPG  
-rw-r--r-- 1 myusername myusername 4135748 Aug  7  2013 A-91.JPG  
-rw-r--r-- 1 myusername myusername 4240316 Aug  7  2013 A-92.JPG  
-rw-r--r-- 1 myusername myusername 4325900 Aug  7  2013 A-93.JPG
Run Code Online (Sandbox Code Playgroud)

我想将 2013 年 8 月 7 日更改为今天。我试过这个,但没有效果:

$ touch -a --no-create *  
Run Code Online (Sandbox Code Playgroud)

什么是正确的命令?


回应@steeldriver:

$ touch -a --no-create *  
$ ls -lu  
total 45436  
-rw-r--r-- 1 myusername myusername 4129128 Apr 14 09:25 A-32.JPG  
-rw-r--r-- 1 myusername myusername 4106876 Apr 14 09:25 A-37.JPG  
-rw-r--r-- 1 myusername myusername 4192644 Apr 14 09:25 A-38.JPG  
-rw-r--r-- 1 myusername myusername 4324212 Apr 14 09:25 A-42.JPG  
-rw-r--r-- 1 myusername myusername 4147792 Apr 14 09:25 A-44.JPG  
-rw-r--r-- 1 myusername myusername 4271768 Apr 14 09:25 A-53.JPG  
-rw-r--r-- 1 myusername myusername 4330804 Apr 14 09:25 A-86.JPG  
-rw-r--r-- 1 myusername myusername 4299692 Apr 14 09:25 A-87.JPG  
-rw-r--r-- 1 myusername myusername 4135748 Apr 14 09:25 A-91.JPG  
-rw-r--r-- 1 myusername myusername 4240316 Apr 14 09:25 A-92.JPG  
-rw-r--r-- 1 myusername myusername 4325900 Apr 14 09:25 A-93.JPG  
Run Code Online (Sandbox Code Playgroud)

所以我想我不确定我想更改哪个日期。也许所有与文件相关的日期。

pLu*_*umo 6

你使用-a

-a 只更改访问时间

但是ls -l显示修改时间,运行stat %y file还是ls -lu看更新的Access时间。

如果要更改修改和访问时间,请省略-a

touch --no-create *
Run Code Online (Sandbox Code Playgroud)

或者如果您只想更新修改时间,请使用-m.