1. 程式人生 > >AWK命令生成大批量資料並記錄到文字檔案中

AWK命令生成大批量資料並記錄到文字檔案中

AWK命令生成大批量資料並記錄到文字檔案

示例: #!/usr/bin/ksh startnum=0 endnum=100

awk ‘BEGIN{ for (j = ‘1’; j <= ‘900000’ ; ++j) { printf “10%08d|9990000006%08d|1000179388|20160311234208|20370101080000|20160311234208|000000000000000|0|20160311234211|\n”,j,j } }’ /dev/null >> ./bbb.txt

特殊要點: $0 表示整個當前行 $1 每行第一個欄位 NF 欄位數量變數 NR 每行的記錄號,多檔案記錄遞增 FNR 與NR類似,不過多檔案記錄不遞增,每個檔案都從1開始 \t 製表符 \n 換行符 FS BEGIN時定義分隔符 RS 輸入的記錄分隔符, 預設為換行符(即文字是按一行一行輸入) ~ 匹配,與==相比不是精確比較 !~ 不匹配,不精確比較 == 等於,必須全部相等,精確比較 != 不等於,精確比較 &&  邏輯與 || 邏輯或 +匹配時表示1個或1個以上 /[0-9][0-9]+/ 兩個或兩個以上數字 /[0-9][0-9]*/ 一個或一個以上數字 FILENAME 檔名 OFS 輸出欄位分隔符, 預設也是空格,可以改為製表符等 ORS 輸出的記錄分隔符,預設為換行符,即處理結果也是一行一行輸出到螢幕 -F’[:#/]’ 定義三個分隔符