com xargs
:
xargs -a urlsfile -n 15 bash -c 'wkhtmltopdf "$@" my_$$.pdf'
ou se o seu xargs
não for compatível com -a
:
cat urlsfile | xargs -n 15 bash -c 'wkhtmltopdf "$@" my_$$.pdf'
Eu tenho um programa que leva urls como argumentos de linha de comando e gera um arquivo pdf. Por exemplo, eu uso a substituição de comando para fornecer os URLs de entrada de um arquivo urlsfile
wkhtmltopdf $(cat urlsfile) my.pdf
Em urlsfile
, cada linha é uma URL.
Agora, gostaria de agrupar todas as 15 linhas em urlsfile
e alimentar um grupo de URLs no programa por vez.
Como posso fazer isso no bash?
Note que é aceitável criar um arquivo pdf por 15 URLs, e então eu vou mesclar os arquivos pdf em um. Se a mesclagem puder ser feita pelo programa, é melhor.
Obrigado.
com xargs
:
xargs -a urlsfile -n 15 bash -c 'wkhtmltopdf "$@" my_$$.pdf'
ou se o seu xargs
não for compatível com -a
:
cat urlsfile | xargs -n 15 bash -c 'wkhtmltopdf "$@" my_$$.pdf'
gawk '{ f=f " " $0}
NR%15==0 { print("wrhtml2pdf " f " " NR/15 ".pdf") ; f=""}' urls
e se você gostar da saída, substitua print
por system
Tags bash text-processing