gpt4 book ai didi

linux - 根据名称删除文件夹

转载 作者:太空宇宙 更新时间:2023-11-04 05:52:46 25 4
gpt4 key购买 nike

我有一个文件夹列表,其中的文件夹名为 2014-01-0、2015-05-1 等,其中 01 和 05 是考虑一年 52 周的周数
我需要在linux中编写一个脚本来保留最新的2个文件夹并删除其余的。我的解决方案是将目录列表存储在数组中,然后比较它们,但我无法弄清楚如何从文件夹名称中删除“-”并将其存储在数组中。如果您有任何其他解决方案,请随时提及

最佳答案

当 10 以下的所有弱数都有前导零时,可以直接使用 ls 给出的顺序。
可以使用 tail -2 获取最后两行。
您想跳过这些,以下解决方案很脏(但对于学习命令很有用):

find . -type d -name 2\* | grep -v $(ls |tail -2|head -1) | grep -v $(ls | tail -1) | xargs echo rm -r

假设您至少有 2 个目录,删除 echo 一词将使事情正常进行。你永远不应该假设...

当您第一次确定要保留的目录(带有尾部/头)并将它们存储在 var 中时,您可以在测试它们存在后将其排除。

关于linux - 根据名称删除文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28680504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com