2015-04-23 2 views
0

У меня есть txt-файл, содержащий вывод из нескольких команд, выполненных на сетевом оборудовании. Я хотел разобрать этот файл txt, чтобы я мог сортировать и печатать на HTML-странице.Parse txt-файл с оболочкой

Каков наилучший/простой способ сделать это? Экспортировать каждую команду в массив, а затем печатать массив с сортировкой по HTML-коду?

Команды между строками и являются табличными данными. пример:

********************************************************************* 
# command 1 
********************************************************************* 

Object        column1 column2 Total 
------------------------------------------------------------------- 
object 1        526 9484  10010 
object 2        2  10008  10010 
Object 3        0  20000  20000 


********************************************************************* 
# command 2 
********************************************************************* 
(... tabular data ...) 

Может кто-нибудь предложить какой-либо код или файл, где посмотреть, как это сделать?

Спасибо!

+0

Не стесняйтесь сделать это, например. Python? –

+0

Вы хотите извлечь только строки, содержащие команды, а затем отсортировать команды по алфавиту? Или вы хотите включить табличные данные? Или что? Всегда ли командные строки начинаются с '#'? – John1024

+0

Привет @ John1024.i хочу распечатать табличные данные в таблице HTML и отсортировать столбец TOTAL в порядке убывания. Я бы предпочел shell-скрипты, но в случае, если его намного проще с Perl или Python, это способ пойти. Благодаря! – Frosa

ответ

0

Это можно легко сделать в Python с этим примером кода:

f = open('input.txt') 
rulers = 0 
table = [] 
for line in f.readlines(): 
    if '****' in line: 
     rulers += 1 
     if rulers == 2: 
      table = [] 
     elif rulers > 2: 
      print(table) 
      rulers = 0 
     continue 
    if line == '\n' or '----' in line or line.startswith('#'): 
     continue 
    table.append(line.split()) 

print(table) 

Это просто выводит список списков табличных значений. Но он может быть отформатирован для любого HTML или другого формата, который вам нужен.

0

Импорт в программное обеспечение для работы с электронными таблицами. Экспорт в HTML оттуда и изменение по мере необходимости.

+1

Спасибо за предложение Brad. im автоматизирует процесс, поэтому я намерен использовать оболочку. :) – Frosa

+0

@Frosa Вы можете, конечно, автоматизировать программное обеспечение для работы с электронными таблицами из командной строки. Это то, что я сделал бы, если бы не знал каких-либо языков программирования. В любом случае вы даже не сказали нам, какую оболочку или ОС вы используете. Ваш вопрос принадлежит http://www.superuser.com. – Brad

Смежные вопросы