0
Ковычки
21.08.13
✎
17:58
|
Есть текст
Content-Disposition: attachment; filename*0*=koi8-r''%F3%CC%D5%D6%C5%C2%CE%C1%D1%20%C4%CC%D1%20%F7%E5%F7.d; filename*1*=oc
Content-Type: application/msword; name*=koi8-r''%F3%CC%D5%D6%C5%C2%CE%C1%D1%20%C4%CC%D1%20%F7%E5%F7.doc
...
...
name*0*=koi8-r''%E4%EB%F0%20%F5%C8%D4%CF%CD%D3%CB%C1%D1%2C7-1%20%D0%D2%D1;
name*1*=%CD%CF%CA.doc
...
...
filename*0*=koi8-r''%E4%EB%F0%20%F5%C8%D4%CF%CD%D3%CB%C1%D1%2C7-1%20%D0;
filename*1*=%D2%D1%CD%CF%CA.doc
как соединить строки по шаблону ;[\t ]*\n*[\t ]*(file){0,1}name\*[0-9]\*=
желательно sed
подстроки могут быть как в соседних строках, так и в одной строке.
(без темпового файла и прочих фифо, не считая создаваемого самим седом)
|
|
1
Ковычки
21.08.13
✎
18:18
|
есть косячный вариант, но хотелось бы повминяемее
sed ':a; N; s/\;[\t ]*\(file\)*name\*[1-9]\*=//g; s/\;\([\t ]*\)\(file\)*name\*\(0\*\)*=/\;\1\2name=/g; ta; s/\;[\t ]*\n\([\t ]*\)\(file\)*name\*\0\*=/\;\n\1\2name=/g; ta; s/\;[\t ]*\n[\t ]*\(file\)*name\*[1-9]\*=//g; ta; s/\([\t ]*\)\(file\)*name\*0\*=/\1\2name=/g;' 1323152506.4380_100.ws075-desktop.eml 1376891174.4365_334.ws075-desktop.eml | less
|
|