ocehb: (Default)
ocehb ([personal profile] ocehb) wrote2010-10-08 08:25 pm
Entry tags:

(no subject)



Помогите собрать программку, которая бы находила фрагмент текста в первом файле (например после слов DESC) и искала бы наличие подобного фрагмента во втором файле,
если такой фрагмент в другом файле находится то записываем этот фрагмент в 3й файл)



# grep -F "$(grep -m1 -A1 DESC file.1 | tail -1)" file.2 > file.3





avysk: (Default)

[personal profile] avysk 2010-10-08 06:17 pm (UTC)(link)
Баг. Показать?
avysk: (Default)

[personal profile] avysk 2010-10-08 06:54 pm (UTC)(link)

imac-alexey-vyskubov:~ alexey$ cat file.1 
No
match
in
this
file
imac-alexey-vyskubov:~ alexey$ cat file.2 
DESC foobar
DESC barfoo
imac-alexey-vyskubov:~ alexey$ grep -F "$(grep -m1 -A1 DESC file.1 | tail -1)" file.2 > file.3
imac-alexey-vyskubov:~ alexey$ cat file.3
DESC foobar
DESC barfoo
avysk: (Default)

[personal profile] avysk 2010-10-08 07:08 pm (UTC)(link)
Не, я не к тому. Если в первом файле вообще нет DESC, то в третий скопируется второй файл целиком. Неаккратненько.

Кроме того,
imac-alexey-vyskubov:~ alexey$ cat file.1
NO_DESCRIPTION
foobar
DESC
barfoo
imac-alexey-vyskubov:~ alexey$ cat file.2 
aaa
foobar
barfoo
imac-alexey-vyskubov:~ alexey$ grep -F "$(grep -m1 -A1 DESC file.1 | tail -1)" file.2 > file.3
imac-alexey-vyskubov:~ alexey$ cat file.3
foobar

Хотя в file.3 должно быть barfoo.
avysk: (Default)

[personal profile] avysk 2010-10-08 07:17 pm (UTC)(link)
Ну, условие задачи вообще очень приблизительное, но в боевых условиях скрипт уже два раза развалился :-)

Да я понимаю, это я так, из врождённой вредности. :-)