tengu_crow: (Default)
[personal profile] tengu_crow
Наконец, с легкой руки тов. [livejournal.com profile] high_way_star разжился собственным DVD-RW. Который и эксплуатировал эти выходные - благо было настроение и время. Начал с того, что слил весь мусор на одну болвань, освободив гига три. А потом...



Вот чем может занятся человек, заполучивший DVD? Я начал упорядочивать свою библиотеку :) Необыкновенно увлектельное занятие на самом деле.

Поскольку место у меня высвободилось, я решил переформатировать старую добрую Библиотеку Ксены Принцессы-Воина Персии. Это в своем роде монументальная вещь по количеству книг и степени упорядоченности. Особенно если учесть что диск компоновался то ли на 486 то ли на 586 компьютере, который стоял давным-давно в одной далекой гал... во втором общежитии Академии Связи. Так вот. Во-первых, я решил забэкапить диск (ибо болвани уже один Конфуций знает сколько лет), а во-вторых, я решил его переформатировать под свои нужды. Дело в том, что книги там хранятся или в формате "Асприн Роберт.rar" или (отдельные буки россыпью) вообще лежат в "братской могиле" вроде "A.rar".

1.

Тут я сделал паузу чтобы решить - чего именно мне хочется? Мой основной инструмент для работы с подобными вещами - это шустрый и удобнейший каталогер Cathy, который может вести каталог по любому носителю и обладает зверской скоростью поиска и развитым поисковым языком. Штука настолько мощная и удобная, что я использую ее в том числе для поиска по своему винту :)

Cathy каталогизирует только имена и структуры. Поэтому, в идеале все книги в библиотеке должны лежать отдельными файлами. Одна книга - один файл (по принципу снайперов - одна пуля - один труп :)

И называться так же как называются mp3-файлы. То есть "Асприн Роберт - Холодные финансовые войны.zip". Тогда поиск по автору-названию будет совсем не трудным и мне даже не понадобится доставать диск с полки, чтобы посмотреть - есть там нужная мне книга или нет (а в старой библиотеке для этого требовалось во-первых найти диск, во-вторых закопаться в архив "Асприн Роберт.rar" плюс попутно проверить - а не занесло ли чего-нибудь в архив "А.rar").

Следующим был вопрос о выборе архиватора для текстов. Было три варианта - плэйн текст, рар или зип. Вообще-то я приверженец рар-а, но в данном случае все-таки решил остановиться на zip-е, ибо его понимают все и везде. Что еще удобно, большинство текстовых поисковиков может искать и внутри зиповых архивов (хорошие поисковики вроде AVSearch ищут и внутри раров), так что можно заниматься полнотекстовым поиском даже не распаковывая буки. Словом быстрый и компактный рар был принесен в жертву универсальному зипу.

Все прочее (листы таблиц в экселе, базы данных в аксессе или SQL, подробная классиификация по жанрам - неокиберпанк, постфутуристическйквадростимпанк и дадаистический экспрессивный постмодерн) от лукавого, ибо никто этим не пользуется. А если пользуется - то редко.

2.

Стандарты были определены и я засучив рукава отважно принялся за работу. Для начала все было распаковано на диск (и отъело у меня 2 Гига). После этого в ход пошла тяжелая артиллерия, а именно Total Commander и .cmd - файлы. Для пакетной обработки файлов ничего лучше и проще по сей день не придумано. Особенно, когда выяснилось, требуется обработать пять тысяч файлов :) И вот тут мне пригодился опыт товарищей вирусописателей. Я помнил, что давным-давно читал в какой-то заметке про то, что батниками удобно вести массовые переименования и копирования файлов, причем это очень-очень развитый язык. Таким макаром даже писались вирусы (очень примитивные), которые распространяли сами себя по диску. Ну...

Во-первых, было использовано "групповое переименование" Тотала и функция, которая показывает в каталоге все файлы одним чохом, где бы они не лежали (Ctrl+M, Ctrl+B соответственно). Я свалил все файлы в одну кучу (не трогая их расположения по папкам) и прошелся по ним, переименовав Так Чтобы Каждая Первая Буква Была Большой ("АСПРИН Роберт" на мой вкус читается хуже чем "Асприн Роберт"). И заодно привел в божеский вид еще некоторые мелочи.

Во-вторых, слегка покопавшись в документации я сделал два крошечных батника, один из которых перебирал все директории в своей папке, и внутри каждой из этих директорий запускал второй батник. Второй батник в своей директории для каждого файла поочередно запускал WinRar и паковал им файлы в .zip (ну вот так вот у меня система настроена :) и удалял исходные тексты.

Voila! Все как надо - папки по именам авторов (Асприн Роберт), внутри папки - отдельные архивы под каждую буку (Асприн Роберт - Холодные Финансовые Войны.zip) и общий размер - 680 Метров против 660 которые были до этого.

Овчинка стоила выделки. Выяснилось, что множество файлов, которые сейчас убраны скажем из Мошкова ("по просьбам") или те которые я собирался выкачивать, оказывается спокойно лежат у меня на диске :) Попутно всплыло много вкусностей.



Вторая часть Марлезонского Балета


Отдыхая от трудов праведных я вспомнил о том, что в файловых дебрях моего диска есть еще некоторое количество книг от Шамана (а точнее - прибежавших из ФИДО), которые вообще сделаны в сногсшибательном фидошном стандарте. Например - asprir014.rar, внутри которого лежит File.diz с заголовком и краткой аннотацией и coldwr.txt собственно с текстом. Мне казалось, что этих книг немного, а выяснилось, что немного - это 5110 бук, которые заархивированы в рар и в таком виде занимают 758 Метров. Когда я их распаковал они съели еще 2 Гига пространства :)

Это был вызов. А я уже вошел в нездоровый азарт :)

Попутно у меня навернулась операционная система (по другим, независимым причинам :), но это меня не могло остановить. Был написан батник, который бродит по диску, находит File.diz, выдирает из него название книги, добавляет к нему название архива, в котором он лежит и все это сваливает в файл 1.txt лежащий у меня в корневике. Затем файл 1.txt был подвергнут вивисекции, вычищен от багов и превращен в .cmd файл, переименовывающий файлы из тех что были в те что надо :)

Конечно, всплыло множество подводных камней. Во-первых буква Н. В фидо "эн прописное русское" считается служебным символом и везде где можно заменяется на "эйч прописное латинское". Аналогичная фигня творится с "эр строчное русское" и "пи строчное латинское". Визуально оно не видно, но попробуйте угадать с трех раз каково искать слово "Ночь" в двух вариантах. Во-вторых, и этот камень мне не удалось обойти - во всех описаниях имя автора стоит на первом месте (у Принцессы Ксены все было комильфо :) - т.е. "Роберт Асприн" вместо "Асприн Роберт". То есть авторов отсортировать по алфавиту сложно. Если кто-то думает что достаточно переставить местами два первых слова в каждом файле, то могу разочаровать их, ибо есть такие товарисчи как Альфред Элтон Ван-Вогт или Сергеев-Ценский с Новиковым-Прибоем :) Посему я решил оставить все как есть.

Итог - две библиотеки упорядочено и отсортировано. Десять тысяч книг (причем дополняющие друг-друга, ибо диск Ксены - старая добрая и основательная подборка книг, а диск Шамана - это новинки и вкусности вроде Росциуса и Рю Мураками) около 1,4 Гига.

Очередь за дежавюками :)

Если кому-нибудь интересно - может заглянуть к хакерам за теми статьями, которые я использовал как основу для батов или на сайт к скриптерам, где тоже масса полезного.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

February 2026

S M T W T F S
1234567
891011121314
1516171819 2021
22 232425262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 17th, 2026 12:26 am
Powered by Dreamwidth Studios