簡體   English   中英

每20行使用awk打印標題信息

[英]Print header information using awk every 20 lines

我有一個包含數千個條目的大數據項目。 數據大約有20列,包括氣瓶,汽油里程,品牌,型號等。我正在使用awk輸出所有數據。 我必須將數據整理到一個漂亮的表中。

我正在使用這樣的腳本:

#!/bin/bash

while read x
do
echo $x | awk -F ',' ' { print $1":"$2":"$4":"$7":"$8":"$10":"$11":"$12":"$22":"$24 } '
done

冒號所在的位置會有標題。 我需要每20行重復一次,並且在第20行和標題之后必須有一個換行符。 另外,最后一行應輸出條目數。

我堅持要做的最后三件事。

使用while read循環毫無用處,並且實際上使事情變得復雜,因為awk很難保持行號的計數。 嘗試:

awk -F, 'NR % 20 == 1 { print "header columns" }
    { print $1,$2,$4,$7,$8,$10,$11,$12,$22,$24 }' OFS=: input-file

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM