小编Jas*_*per的帖子

当使用容量达到 95% 时,删除 busybox 中 50GB 最旧​​的文件

好的,我在这里请求了一个代码,但最初我没有要求使其与 busybox 兼容。我的错。我是 Linux 和编码的新手。

该代码需要执行以下操作:

当硬盘容量达到 95% 时,从目录中删除 50GB 最旧​​的数据(带有文件的目录)。

他们给我的代码是,这不适用于busybox:

DIRS="a/ b/"
MAXDELBYTES="53687091200" # 50GB
DELBYTES="0"

find $DIRS -type f -printf "%T@ %s %p\n" | sort -r -n | while read time bytes filename
do
    rm -fv "$filename"
    DELBYTES=$((DELBYTES + bytes))

    if [ $DELBYTES -ge $MAXDELBYTES ]; then break; fi
done
Run Code Online (Sandbox Code Playgroud)

什么不起作用:

  • -printf(改为-print)
  • %T@ %s %p\n(不知道改成什么)
  • 不知道还有什么不工作。我是编码和 Linux 的新手。

现在需要将其转换为busybox,以便它可以在我的嵌入式Linux系统上运行。还需要添加一个 cron 命令,以便它每周五运行。

shell cron find busybox files

3
推荐指数
1
解决办法
1460
查看次数

标签 统计

busybox ×1

cron ×1

files ×1

find ×1

shell ×1