如果您安装了GNU Parallel
http://www.gnu.org/software/parallel/,可以这样做:
parallel gzip ::: *.log
每个cpu内核将运行一个gzip,直到所有日志文件都被gzip压缩.
如果它是较大循环的一部分,则可以使用sem:
for i in *.log ; do echo $i Do more stuff here sem -j+0 gzip $i ";" echo done done sem --wait
它会做同样的,但是给你一个机会,为每个文件做更多的东西.
如果GNU Parallel并没有为您的发行版打包,您可以通过以下方式安装GNU Parallel:
(wget -O - pi.dk/3 || curl pi.dk/3/ || fetch -o - http://pi.dk/3) | bash
它将下载,检查签名,并且如果无法在全球安装,则进行个人安装.
观看GNU Parallel的简介视频,了解更多信息:
https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1