【发布时间】:2020-01-21 20:07:21
【问题描述】:
我是 shell 脚本的新手,所以我需要一些帮助。我有一个充满备份的目录。如果我有超过 10 个备份文件,我想删除最旧的文件,以便仅剩下 10 个最新的备份文件。
到目前为止,我知道如何计算文件,这似乎很容易,但是如果计数超过 10,我该如何删除最旧的文件?
if [ls /backups | wc -l > 10]
then
echo "More than 10"
fi
【问题讨论】:
-
所写的这个条件对我不起作用。我不得不将第一行更改为:
if [ $(ls /backups | wc -l) -gt 10 ]基本上,括号内的空格很重要,管道命令需要包裹在$()中,并且使用-gt而不是>来比较数字括号