剧本的目的:
1.此脚本将删除超过4个月的文件 2.压缩超过3天的文件。
编写了一个脚本,如:
#!/bin/bash
exec >> /dir5/dir6/cleanup-logfiles.log 2>&1
# customer list job
cd /dir1/dir2/dir3/dir4/tmp
find -type f -mtime +120 -exec rm -v '{}' \;
find -type f -mtime +3 -name '*.csv' -exec gzip -v '{}' \;
任何人都可以解释上述命令的用法(以及它们如何用于此目的?
此脚本已放置在/ etc /。可能是什么原因?
答案 0 :(得分:2)
exec
将所有输出(stdout + stderr [2>&1
])从当前shell(即此脚本)重定向到/dir5/dir6/cleanup-logfiles.log
cd
更改目录;)
find
命令会找到修改时间(-type f
)早于120的所有文件(-mtime
),分别为3天,并且:删除它们(-exec rm -v '{}' \;
)或者gzip他们(-exec gzip -v '{}' \;
)。仅当文件具有csv扩展名(-name '*.csv'
)
{}
是当前找到的文件的占位符
脚本可能通过cron(/etc/cron.{d,daily,hourly,weekly,monthly}
或/etc/crontab
)