zoukankan      html  css  js  c++  java
  • Xargs 批量处理命令

     

    xargs是实现批量处理最方便的方法,掌握xargs能省下写许多不必要的脚本。下面已几个例子说明(某些只适用于GNU xargs):

    • 删除所有.txt文件,可以在子目录下:find . -name "*.txt" | xargs rm
    • 打包一个目录下所有.pl文件,可在深层子目录:find . -name "*.pl" | xargs tar -zcf perl.tar.gz
    • 提交一个文件所包含的所有命令(一个命令一行):cat myfile.sh | xargs -i echo qsub {} | sh
    • kill所有满足某个匹配的进程:ps -ax | awk '/something/{print $1}' | xargs kill
    • 批量文件重命名(*.txt->*.bak):find . -name "*.txt" | sed "s/\.txt$//" | xargs -i echo mv {}.txt {}.bak | sh
    • 将一个命令运行100次(比如做bootstrap):awk 'BEGIN{for(i=1;i<=100;++i)print i}' | xargs -i echo qsub -o {}.out -e {}.err somecmd -output {}.out | sh



    这里用echo...sh是为了防止敲错命令。使用时先不加sh,把命令打印到屏幕上,确认无误后加sh真正执行。

  • 相关阅读:
    CCF 201712-4
    图论_最短路径
    图论_查并集
    let和const
    Promise
    实现表单label两端对齐
    始终让footer在底部
    react——使用this.setState({ })修改state状态值
    react——css样式
    react脚手架
  • 原文地址:https://www.cnblogs.com/buttonwood/p/shell.html
Copyright © 2011-2022 走看看