Napady: - bude potreba funkcia length v awk - buffer do ktoreho si ukladame nacitane slova, kontrolujeme dlzku aby sme vedeli kedy odriadkovat - for cylkus, 0 .. NF #!/bin/sh awk -v max="$1" ' BEGIN { FS=" "; radek=""; oddelovac=0; } # prazdny radek => vypiseme zbyvajici slova !length($0) && length(radek) { print radek; radek=""; } # prazdny radek => vypiseme oddelovac odstavce (pokud jsme jeste nevypsali) !length($0) && !oddelovac { print oddelovac=1; } # neprazdny radek => pridame slova do vystupneho radku length($0) { oddelovac=0; for(i=1; i<=NF; i++) { word=$i; # vystupny radek neni prazdny a slovo se vejde => pridame if (length(radek)!=0 && length(radek) + length(word) + 1 <= max) { radek=radek FS word; continue; } else { if (length(radek)!=0) { print radek; } } radek=word; } } ' --- Xtra men: Nguyen Q., Petr G., Pavel Z., Lada K.