Поиск в файлах и сохранение результата в таблицу

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: Моторокер, Avada, CaptainFlint, Nik, d-view

Ответить
starrynight
Сообщения: 4
Зарегистрирован: Сб сен 27, 2014 01:11

Поиск в файлах и сохранение результата в таблицу

Сообщение starrynight »

Дано: Заданная папка/Автор/Название/Файл.txt
Задача: из заданной папки извлечь информацию обо всех файлах и поместить в таблицу вида:
Автор | Название | Файл.txt | Год*
*Год заключен в теги <year>2014</year> в файлах .fb2 (искать только по ним, другие пропустить)
Идеально: сохранить в .cvs

Мне частично удалась первая часть:
В заданной папке жму "Показать все файлы без каталогов", CTRL+A, cm_CopyFullNamesToClip, вставляю результат в таблицу, указав разделитель "/", получаю в таблице Автор | Название | Файл.txt как и хотелось.

Также частично удалась вторая часть с извлечением года:
благодаря этой теме "Как сохранить результат поиска в файлах?
" (не получилось вставить ссылку)

Но как соединить их вместе —никак не соображу.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Directory Lister Pro
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Skif_off
Сообщения: 1260
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

starrynight
Создайте пользовательскую колонку с PCREsearch, например. Будет что-то вроде

Код: Выделить всё

regex5=(\<year\>)(\d{4})(\</year\>)
regex5name=FckYear
regex5replace=$2
regex5type=3
Смотрите PCREsearch.Sample.ini. И загляните в документацию на предмет флагов, чтобы искал только до первого совпадения.
Слэш, кажется, не надо экранировать в PCRE, только обратные?

Для удобства можно первой пустить плагин File:

Код: Выделить всё

[=file.Path][=file.Full Name]
И копировать содержимое всех колонок после Ctrl+B.
starrynight
Сообщения: 4
Зарегистрирован: Сб сен 27, 2014 01:11

Сообщение starrynight »

Flasher писал(а):Directory Lister Pro
Flasher, благодарю за совет, но, видимо, не совсем то, что нужно. Копание в справке не помогло - делает список файлов с массой опций, кроме одной нужной мне - поиск по регулярному выражению внутри файлов.
Skif_off писал(а):Создайте пользовательскую колонку с PCREsearch
Skif_off, большое спасибо, все отлично получилось. Слэши в таком виде работают, до первого совпадение это regex5type=4 (вместо 3)
На CTRL+B у меня заходит в папку, сработала команда cm_SaveDetailsToFile
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

starrynight писал(а):кроме одной нужной мне - поиск по регулярному выражению внутри файлов
А других вариантов достать год нет? Что это за год вообще?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
starrynight
Сообщения: 4
Зарегистрирован: Сб сен 27, 2014 01:11

Сообщение starrynight »

Flasher писал(а):А других вариантов достать год нет?
а вот выше, Skif_off предложил решение, которое в моем случае отлично подошло. Так любую информацию из файла, найденную через регех, как я понимаю, можно вывести на панель, а потом - сохранить или скопировать.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

starrynight
Я не о решении, а о том, что есть год, и почему его нельзя вытаскивать иначе.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Serge Yolkin
Сообщения: 664
Зарегистрирован: Сб июл 25, 2009 11:12

Сообщение Serge Yolkin »

Flasher
поскольку речь об .fb2, рискну предположить, что это год написания книги
starrynight
Сообщения: 4
Зарегистрирован: Сб сен 27, 2014 01:11

Сообщение starrynight »

Serge Yolkin писал(а):Serge Yolkin
все верно, это год книги
Mailk
Сообщения: 251
Зарегистрирован: Сб янв 16, 2010 20:19

Сообщение Mailk »

Skif_off писал(а): Создайте пользовательскую колонку с PCREsearch, например.
А что такое PCREsearch ?
Аватара пользователя
Avada
Сообщения: 10544
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Mailk
Плагин такой. На оффоруме TC тема есть.
А нормально цитату оформить было — никак? Лишнее убрано.

Skif_off
Кстати, на какой-нибудь приличный ресурс эту штуку хорошо было бы выложить. (При попытке скачивания оттуда, где это разместил автор, я уже поимел большие неприятности и других призываю к осторожности.)
Даже самая богатая фантазия
Не представит себе наши безобразия.
Skif_off
Сообщения: 1260
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

Avada писал(а):Кстати, на какой-нибудь приличный ресурс эту штуку хорошо было бы выложить. (При попытке скачивания оттуда, где это разместил автор, я уже поимел большие неприятности и других призываю к осторожности.)
Мне, к сожалению, негде. А что не так? Сливал трижды (посмотреть/попробовать/поставил на постоянку), никаких проблем.
Автор почему-то на totalcmd.net выложил только RegXtract.

Добавлено:
Понял, о чем речь, AdBlock рулит :)
Ответить