获取xargs的序列号

问题描述:

在GNU并行您有:获取xargs的序列号

seq() -  sequence number of job 

多亏了这一点,我可以使用运行在parallelwget

parallel -a urls.txt -j8 wget -q {} -O '{=$_=sprintf("file%05d.ts", $job->seq())=}' 

..和它命名文件,像这样:

file00001.ts 
file00002.ts 
... 
file00999.ts 

现在,ho I W可以得到xargs序列号?

例子:

xargs -P 8 -n 1 curl -O < urls.txt 

像这样:

cat urls.txt | 
    parallel --shellquote | 
    parallel --shellquote | 
    perl -pe 's/(.*)/$1.sprintf(" -O file%05d.ts",++$t)/e' | 
    xargs -P 8 -n 1 -I {} bash -c "wget {}" 

,如果你有特殊字符像空间和“网址的所需的2个--shellquote S:

http://pi.dk/? '