Как создать таблицу в awk?

Мой входной файл – file1

count month 505 Apr-2010 252 Mar-2010 426 Feb-2010 201 Jan-2010 211 Dec-2009 

В том же файле я хочу, чтобы результат был следующим:

 +-------+----------+ | count | month | +-------+----------+ | 505 | Apr-2010 | | 252 | Mar-2010 | | 426 | Feb-2010 | | 201 | Jan-2010 | | 211 | Dec-2009 | +-------+----------+ 

Мне нужна ваша помощь.

  • Как заставить эту команду awk работать
  • Идеи для анализа результатов netstat для активных подключений
  • Попытка конвертировать простую программу C в программу AWK
  • Изменение столбцов с помощью awk
  • sed: отрежьте строку X и добавьте в начало файла
  • Как просмотреть файлы, содержащие пробелы в имени файла?
  • AWK - как получить содержимое файла, указанное первым столбцом файла
  • Получите процент использования для точки монтирования
  • One Solution collect form web for “Как создать таблицу в awk?”

    Это будет работать для ввода:

     BEGIN { n=0 sep="+-------+----------+" } { if (/^$/) { print sep } else if (n==0) { print sep print "| "$1" | "$2" |" } else { print "| "$1" | "$2" |" } n++ } END { print sep } 

    Он не выполняет автоматического выравнивания, поэтому он сломается, если любое из полей увеличится в ширину. Взгляните на этот пост для автоматического выравнивания.

    Interesting Posts
    Linux и Unix - лучшая ОС в мире.