I would like to split a string of numbers "1-2,4-13,16,19-20,21-25,31-32" and output these with awk into
-dFirstPage=1 -dLastPage=2 file.pdf -dFirstPage=4 -dLastPage=13 file.pdf -dFirstPage=16 -dLastPage=16 file.pdf file.pdf -dFirstPage=19 -dLastPage=20 file.pdf -dFirstPage=21 -dLastPage=25 file.pdf -dFirstPage=31 -dLastPage=32 file.pdf
When i use the script below it unsorts it into
-dFirstPage=19 -dLastPage=20 file.pdf -dFirstPage=21 -dLastPage=25 file.pdf -dFirstPage=31 -dLastPage=32 file.pdf -dFirstPage=1 -dLastPage=2 file.pdf -dFirstPage=4 -dLastPage=13 file.pdf -dFirstPage=16 -dLastPage=16 file.pdf
awk -v p="1-2,4-13,16,19-20,21-25,31-32" -v dn="file.pdf" 'BEGIN{ORS=" "; split(p,t,",");for (i in t) if(t ~ /-/) {split(t,t1,"-"); print "-dFirstPage=" t1[1] ,"-dLastPage=" t1[2], dn } else {print "-dFirstPage=" t ,"-dLastPage=" t, dn }}'
What ist wrong with the script?