• xargs 命令详解


    xargs 命令是 Unix 系统中一个功能强大的实用工具,它允许用户从标准输入中**参数并执行命令。它经常与其他命令一起使用,例如 find,grep,ls 等等。

    以下是一些 xargs 命令的常用选项和示例的解释:

    • -n:指定每次执行命令使用的最大参数数量。例如,xargs -n 1 command 将逐个执行 command 的一个参数。
    • -I:将命令中指定的占位符字符串替换为标准输入中的参数。例如,xargs -I {} command {} 将使用标准输入中的参数替换 {}。
    • -t:在执行命令之前将要执行的命令打印到标准错误输出。例如,xargs -t command 将在执行命令之前打印要执行的命令。
    • -p:在执行每个命令之前提示用户确认。例如,xargs -p command 将在执行每个命令之前提示用户确认。
    • -0:指定输入项以空字符而不是空格分隔。当处理包含空格或其他特殊字符的文件名时,这非常有用。例如,find . -name '*.txt' -print0 | xargs -0 command 将在所有以 .txt 结尾的文件上执行 command。

    以下是 xargs 的一些示例用法:

    • 要删除以 .bak 结尾的目录中的所有文件,可以使用以下命令:

    find . -name '*.bak' -print0 | xargs -0 rm

    • 要在特定扩展名的所有文件中搜索字符串,可以使用以下命令:
    find . -name '*.txt' -print0 | xargs -0 grep 'search_string'
    • 要同时在多个文件上执行命令,可以使用以下命令:

    ls *.txt | xargs command

    • 要将所有特定扩展名的文件转换为不同格式,可以使用以下命令:
    find . -name '*.jpg' -print0 | xargs -0 -I {} convert {} {}.png

     

    LINUX下批量删除空文件

    Linux下批量删除空文件(大小等于0的文件)的方法

    find . -name "*" -type f -size 0c | xargs -n 1 rm -f



    用这个还能够删除指定大小的文件,仅仅要改动相应的 -size 參数即可,比如:

    find . -name "*" -type f -size 1024c | xargs -n 1 rm -f



    就是删除1k大小的文件。

    (但注意 不要用 -size 1k。这个得到的是占用空间1k,不是文件大小1k的)。

    假设仅仅要删除目录或者名字连接等,能够相应的改 -type 參数,详细细节见 man find

  • 相关阅读:
    设计模式(十六)----结构型模式之代理享元模式
    Linux C/C++ UDP Socket 网络通信
    Patroni for opengauss 10:rewind
    如何评价2023年亚太杯数学建模竞赛?
    前端发展趋势:WebAssembly、PWA 和响应式设计
    怎么设置IP白名单
    uniapp原生插件-YL视频播放器
    人群异常聚集识别监测系统
    Ansible常用模块
    Nginx
  • 原文地址:https://blog.csdn.net/ajax_beijing_java/article/details/132874327