zoukankan      html  css  js  c++  java
  • Linux:xargs命令

    xargs用作替换工具,读取输入数据重新格式化后输出。

    定义一个测试文件,内有多行文本数据:

    [root@entel2 ~]# cat xargs.txt 
    a b c d e f g 
    h i j k l m n 
    o p q 
    r s t 
    u v w x y z

    多行输入单行输出

    [root@entel2 ~]# cat xargs.txt 
    a b c d e f g 
    h i j k l m n 
    o p q 
    r s t 
    u v w x y z
    [root@entel2 ~]# cat xargs.txt |xargs 
    a b c d e f g h i j k l m n o p q r s t u v w x y z

    -n选项多行输出

    [root@entel2 ~]# cat xargs.txt | xargs -n5
    a b c d e
    f g h i j
    k l m n o
    p q r s t
    u v w x y
    z
    [root@entel2 ~]# 

    -d选项可以自定义一个定界符:

    [root@entel2 ~]# echo "nameXnameXnameXname" | xargs -dX
    name name name name

    结合-n选项使用

    [root@entel2 ~]# echo "nameXnameXnameXname" | xargs -dX -n2
    name name
    name name

    xargs结合find使用

    用rm 删除太多的文件时候,可能得到一个错误信息:

    /bin/rm Argument list too long.

    用xargs去避免这个问题:

    find . -type f -name "*.log" -print0 | xargs -0 rm -f 

    xargs -0将作为定界符。

    统计一个源代码目录中所有py文件的行数:

     find . -type f -name "*.py" -print0 | xargs -0 wc -l 

    查找所有的jpg 文件,并且压缩它们:

    find . -type f -name "*.jpg" -print | xargs tar -czvf images.tar

     

  • 相关阅读:
    Hopcroft-Carp 算法模板 自用
    (转)二分图匹配匈牙利算法与KM算法
    LightOJ
    最短路类型 (至今做过的)
    POJ
    POJ
    差分约束
    传递闭包(例题POJ3660)
    arrow,
    分辨率,
  • 原文地址:https://www.cnblogs.com/xwb583312435/p/9023520.html
Copyright © 2011-2022 走看看