| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > *NIX системы: Общие вопросы > Прошу помощи |
| Автор: Testernew 15.1.2014, 18:14 | ||
| Есть файл some.txt с блоками текста которые разделены пробелами Пример:
Задача: Если в блоке(блок: от пустой строки до пустой строки) текста есть подстрока 'value' то найти и считать значение test которое находиться в первой строке и записать его в файл res.txt и.т.д для всех блоков в файле. |
| Автор: Romikgy 15.1.2014, 23:34 |
| на любом скриптовом(аля перл или питон) языке написать парсер для сего... |
| Автор: beroal 16.1.2014, 10:03 |
| Да и на Си будет не трудно написать. |
| Автор: tzirechnoy 16.1.2014, 14:49 | ||
|
| Автор: Testernew 19.1.2014, 13:41 | ||||||||||
Большое спасибо!!! Подскажите как тут лучше сделать. Задача, взять строку из файла result.txt найти ее в файле base.txt и записать данные которые расположены после ";" (после ; могут быть как буквы так и цифры разного регистра) из этой строки в файл finish.txt Вот как я пробую это сделать. но что то не разобрался с циклам for в bash. Файл result.txt содержит ip адреса. Пример Файла:
Файл base.txt содержит записи вида: Пример файла:
|
| Автор: tzirechnoy 19.1.2014, 19:01 |
| Чтобы в bash проще разбираться -- у него есть set -x Но вообще -- в base=... кавычки неправильные (нужны апострофы). Что Вы хотели сделать grepом -- я так и не понял, но в любом случае ничего полезного он у вас делать не будет. Прочитайте man, и попробуйте этот вид grep отдельно, чтобы понять, что он делает. Да, а как лучшэ -- зависит от многих мелочей. Например, от соотношэния размеров файлов base и result, от того, простая ли структура в base -- или там можэт быть правильный csv, от того, достаточно ли сравнивать строки или надо именно как ip-адреса (у которых можэт быть разное текстовое представление по разным причинам). |
| Автор: Testernew 26.1.2014, 14:15 | ||||
Хотел сравнить содержимое строки исключив из нее ip адрес. Вот Как я решил эту задачу(может кому то поможет) возможно не самый оптимальный и быстрый вариант, но работает.
|