• 在Linux命令行中查找空目录


    在 Linux 系统中,出现空的目录这是很正常的事情,而且,也是有办法一次性把它们都找出来的。

    但是,仅仅列出空目录并不是我们的目的,我们今天了解一下如何删除这些空的目录。

    在Linux中查找空目录

    查找空目录,可以使用 find 命令,再结合其 -empty 选项,如下所示:

    find /home/sagar/Files -type d -empty
    图片

    上述命令中,-type d 选项要求只列出目录。

    查找空文件

    我们上文刚刚提到,-type 选项后面跟 d 参数是搜索目录,将 d 改为 f 即可搜索文件。

    find /home/sagar/Files -type f -empty
    图片

    find 是一个很好用的命令,如果有兴趣了解更多,可参考我们先前的文章:

    关于 find 命令的15个超级有用的例子

    使用 find 命令删除空文件和目录

    使用 find 命令检索出结果,然后再使用 -delete 选项即可将其删除。比如,删除空目录,可参照如下命令:

    find /home/sagar/Files -empty -type d -delete
    图片

    使用 xargs 和 find -exec 命令删除空文件和目录

    find 和 exec 命令的结合可以让我们执行自定义操作,比如对搜索结果运行脚本和执行程序。

    而 xargs 可以从标准输入中获取输入,甚至可以将另一个命令的输出视为输入,并将其用作命令。

    我们先来看一下 find -exec 命令。使用该命令删除空文件,如下所示:

    find /home/sagar/Files -type f -empty -print0 -exec rm -v “{}” ;
    图片

    删除空的目录,可使用如下命令:

    find /home/sagar/Files -type d -empty -print0 -exec rmdir -v “{}” ;
    图片

    使用 xargs 命令的方式,如下所示:

    find /home/sagar/Files -type d -empty -print0 | xargs -0 -I {} /bin/rmdir “{}”
    图片

    然后,对上述命令做稍微的调整,可删除空文件:

    find /home/sagar/Files -type f -empty -print0 | xargs -0 -I {} /bin/rm “{}”
    图片

  • 相关阅读:
    PyCharm中如何使用不同的虚拟环境
    【STM32】sct 分散加载文件的格式与应用
    生产者消费者模型(linux下c语言实现)
    安阳旅游地图
    uniapp起步
    Spring AMQP元注解
    Vue el-table 重置按钮设计模板
    SpringBoot使用RestTemplate远程调用其他服务接口
    小米商城侧导航栏的实现
    【Ne4j图数据库入门笔记1】图形数据建模初识
  • 原文地址:https://blog.csdn.net/mengmeng_921/article/details/128096699