awk -F' - |:[0-9]+/' 'FILENAME=="f1" { if (/^#EXTINF/) chn=$NF; if (/^http:/) chg2id[chn] = $NF; next }; /^#SERVICE/ { line = $0; next}; /^#DESCRIPTION/ { chn = substr($0,14); sub( /^#SERVICE 1:(0:)+/, "#SERVICE " chg2id[chn], line); print line; print $0; next} { print }' f1 f2
Ahol f1 és f2 _sorrendhelyesen_ a két fenti formájú fájl neve, és feltételezve, hogy a forma tényleg folytatódik.