У меня плоский файл записей, каждый длиной 33 строки.Мне нужно отформатировать этот файл для спецификации в шаблоне.Шаблон в формате DOS, а исходный файл в формате NIX.Шаблон имеет определенные отступы и интервалы, которые должны соблюдаться.Я подумал о нескольких вариантах:
- BASH с классическими инструментами nix: sed, awk, grep и т. Д. *
- BASH с набором шаблонов
- Perleith template toolkit
- Perl
Это в порядке моего знакомства.Вот пример исходной записи (в формате NIX): я сократил количество строк для экономии места (обычно 33 строки):
JACKSON HOLE SANITARIUM AND REPTILE ZOO
45 GREASY HOLLER LN
JACKSON HOLE, AK 99999
Change Service Requested
BUBBA HOTEP
3 DELIVERANCE RD
MINNEAPOLIS, MN 99998
BUBBA HOTEP 09090909090909
You have a hold available for pickup as of 2012-01-04:
Title: Banjo for Fun and Profit
Author: Williams, Billy Dee
Price: $10
Вот шаблон (формат DOS - строки уменьшены - обычно 66 строк)):
<%BRANCH-NAME%>
<%BRANCH-ADDR%>
<%BRANCH-CTY%>
<%CUST-NAME%> <%BARCODE%>
You have a hold available for pickup as of <%DATE%>:
Title: <%TITLE%>
Author: <%AUTHOR%>
Price: <%PRICE%>
<%CUST-NAME%>
<%CUST-ADDR%>
<%CUST-CTY%>
end of file
На самом деле в конце каждой записи написано «конец файла».
Мысли?Я склонен слишком усложнять вещи.
ОБНОВЛЕНИЕ2
Разобрался.
Мой ответ ниже.Не стесняйтесь предлагать улучшения.