5 linux bash centos find delete-file
删除3个月以上的文件如何?
90天我知道:
find /tmp/*.log -mtime +90 -type f -delete
Run Code Online (Sandbox Code Playgroud)
但我怎么知道3个月总是等于90天?确切的天数?是否有更好的方式告诉-mtime要遵循months?
如果您想要3个月的确切天数,那么您可以使用:
days=$(( ( $(date '+%s') - $(date -d '3 months ago' '+%s') ) / 86400 ))
Run Code Online (Sandbox Code Playgroud)
并将其用作:
find /tmp/*.log -mtime +$days -type f -delete
Run Code Online (Sandbox Code Playgroud)
或直接在find:
find /tmp/*.log -type f \
-mtime "+$(( ( $(date '+%s') - $(date -d '3 months ago' '+%s') ) / 86400 ))" -delete
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7814 次 |
| 最近记录: |