发现一个有意思的程序“GNU Parallel”
主页:http://www.gnu.org/s/parallel/
文档:http://www.gnu.org/s/parallel/man.html
直接上一个有代表性的例子就当抛砖引玉吧:
批量移动大量文件:
1) 直接mv *.log destdir
bash: /bin/mv: Argument list too long
2) 用shell for搞
not fashion
3) ls | grep -E '\.log$' | parallel mv {} destdir
parallel来做for的事情,有多少个文件,执行多少次mv
4) ls | grep -E '\.log$' | parallel -m mv {} destdir
究级体,parallel会自动切分参数列表到合适的长度,执行几次mv搞定
当然,parallel还有很多功能与参数,大家可以浏览文档页面的其他例子看看是否能用到自己的工作中
主页:http://www.gnu.org/s/parallel/
文档:http://www.gnu.org/s/parallel/man.html
直接上一个有代表性的例子就当抛砖引玉吧:
批量移动大量文件:
1) 直接mv *.log destdir
bash: /bin/mv: Argument list too long
2) 用shell for搞
not fashion
3) ls | grep -E '\.log$' | parallel mv {} destdir
parallel来做for的事情,有多少个文件,执行多少次mv
4) ls | grep -E '\.log$' | parallel -m mv {} destdir
究级体,parallel会自动切分参数列表到合适的长度,执行几次mv搞定
当然,parallel还有很多功能与参数,大家可以浏览文档页面的其他例子看看是否能用到自己的工作中