Как добавить новые строки между строками и начальную и конечную позиции файла csv

Если top уже запущен, нажмите или . Над данными появится запрос:

primary key [xxxxx]:

Где xxxxx - текущий ключ сортировки. Введите имя столбца, по которому вы хотите выполнить сортировку. Если имя столбца содержит «%» или «#», опустите символ. Для% CPU просто введите "cpu".

1
25.04.2019, 08:52
2 ответа

Вот так:

$ perl -ne 'BEGIN{
                $header="+++ Database Column - begin +++"; 
                $footer="+++ Database Column - end +++";
            }
            if($.==1){
                $header.="\n$_"; 
                next;
            } 
            print "$header$_$footer\n"' file 
+++ Database Column - begin +++
Name,Host,Database,Schema,Table,Description,ODBC Type,Data Type,Native Type
Deptno,My Host,My Database,Integration,Dept,Description of Column,INTEGER,INT16,Number
+++ Database Column - end +++
+++ Database Column - begin +++
Name,Host,Database,Schema,Table,Description,ODBC Type,Data Type,Native Type
empno,My Host,My Database,stage,emp,Description of Column,INTEGER,INT16,Number
+++ Database Column - end +++
+++ Database Column - begin +++
Name,Host,Database,Schema,Table,Description,ODBC Type,Data Type,Native Type
empname,My Host,stage,emp,Description of Column,VARCHAR,STRING,Text
+++ Database Column - end +++
0
27.01.2020, 23:41

Может быть, что-то вроде:

awk -F, '
  BEGIN {
    table = 1#st field
    begin = "+++ Database Column - begin +++"
    end = "+++ Database Column - end +++"
  }
  NR == 1 {begin = begin "\n" $0; next}
  $table != last_table {
    if (NR > 2) print end
    print begin
    last_table = $table
  }
  {print}
  END{if (NR > 1) print end}'
1
27.01.2020, 23:41

Теги

Похожие вопросы