2016-07-26 25 views
2

有沒有方法將上次修改時間戳添加到文件名?我想備份文件超過10天的,我想咂了最後修改日期的腳本找到該文件:如何使用上次修改日期而不是當前日期向文件添加時間戳

find /users/tnea01/logfile* -mtime +10 -type f -exec sh -c \ 'tar -czvPf /users/tnea01/logfile_archive/$(basename $0)_$(date +%F).tar.gz $0' {} \; 

,而不是使用日期+%FI想利用修改的日期和不是現在。

感謝您

+0

您可以使用'stat -c%y'來獲取文件的修改時間。 – kaylum

+0

'touch -d「日期字符串」'使用'「日期字符串」'而不是當前時間或'-t「時間戳」'。 –

+1

_GNU_'date'(在LInux上)支持'-r/- reference filename'這樣:'$(date -r {} +%F)' –

回答

3

你能在這種情況下,做的是使用-r日期。所以,你可以:

date -r <filename> 

將返回像日期:Tue Jul 26 14:02:26 PDT 2016

如果您也可以使用%F%D在文件名後,你在做:

date -r <filename> +%F 

將只返回yyyy-mm-dd like 2016-07-26

+1

謝謝RBenito! -r正是我在尋找的 – connollyc4

+1

@RBenito謝謝 – W0rmH0le

相關問題