• 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

  • 相关阅读:
    小程序npm包--API Promise化
    2022-09-09 Unity InputSystem1——概述
    后渗透之日志分析实验
    FAST-LIO,FAST-LIO2与FASTER-LIO
    SpringBoot 快速实现 api 接口加解密
    洛谷P5764 新年好
    改进乌鸦算法求解单目标优化问题
    为什么许多shopify独立站卖家都在用聊天机器人?一分钟读懂行业秘密!
    go-zero jwt 鉴权快速实战
    Docker覆盖网络--初步了解
  • 原文地址:https://blog.csdn.net/ajax_beijing_java/article/details/132874327