久久青草精品A片狠狠,日韩欧美视频一区二区,亚洲国码AV日韩,国产精品黄在

Linux awk 命令

2016-12-02 16:59:46 6934

簡介

AWK:三位創造者Aho、Weinberger和Kernighan統稱

官方定義:一個優秀的樣式掃描與處理工具

定位:AWK是一種用于處理文本的編程語言工具,主要用于格式化報文或從一個大的文本文件中抽取數據提取原來文本中行的某些域進行計算組合顯示出結果

 

【掃描文件中的每一行,查找與命令行中所給定內容相匹配的模式。如果發現匹配內容,則進行下一個編程步驟。如果找不到匹配內容,則繼續處理下一行,直到文件末尾

 

[Shell過濾工具中最難掌握的,語法復雜,錯誤提示不明確]

 

優點:

1.處理文件中的?錄

2.簡單,解釋執行,不必編譯(與C相比)

3.容易獲得,unix自帶(whereis awk)

模式和動作

模式部分決定了動作語句何時觸發及觸發的事件【處理語句】

模式部分可省略,則動作對每一行執行;模式部分可以是任何條件語句、復合語句、正則表達式



命令格式及說明

格式:

語法組成:【查找  -à 執行處理】

awk ‘pattern{action}’ filename

【注意,pattern在非括號中,用于查詢篩選匹配行,action在括號中,action是在找到匹配內容時所執行的一系列命令,用于對篩選后的內容進行處理】

 

其中action內容可擴充,也可以有多個action。
執行順序:awk一行行讀入輸入文件,順序執行‘’內內容,按模式匹配來采取動作。
其他調用:awk可用內部變量和函數,條件與循環?句,也可執行數學運算和字符串操作。此外,可以使用BEGIN和END來執行處理前預操作和處理后后繼操作。

格式:

awk [ -F re] [parameter...] ['prog'] [-f progfile]

 

參數說明:

-F re

允許awk更改其字段分隔符,默認空格

A.-F參數后緊跟單個分隔符,則用雙引號“”,例如 –F”+”
B.-F參數后緊跟多個分隔符,則用單引號‘ ’并用[ ],中間順序無所謂,例如-F’[+$]’

parameter

該參數幫助為不同的變量賦值

'prog'

awk的程序語句段。這個語句段必須用單拓號:'和'括起,以防被shell解釋

-f progfile

允許awk調用并執行progfile指定有程序文件

progfile是一個文本文件,他必須符合awk的語法

in_file

awk的輸入文件,awk允許對多個輸入文件進行處理。

值得注意的是awk不修改輸入文件。

如果未指定輸入文件,awk將接受標準輸入,并將結果顯示在標準輸出上。

awk支持輸入輸出重定向。

BEGIN{….}

{…..}

END{……}

位置:’{}’

作用:BEGIN和END的作用是給程序賦予初始狀態和在程序結束之后執行一些掃尾的工作

  BEGIN{}:awk開始掃描輸入之前執行 (顯示變量和預置(初始化)變量)

  END{}:在掃描完全部的輸入之后執行 (最終結果 )

  {}:操作

 

BEGIN部分:設置計數和?印頭

END部分:打印輸出文本總數及結尾狀態標識


調用方法

調用方式:

1

命令行;普通UNIX命令 ,用于解決簡單的問題

 

2

利用命令解釋器調用awk程序;

寫入腳本文件,并在首行加入#!/bin/awk –f ,執行之

 

 

3

使用-f選項調用awk程序

所有awk插入一個單獨文件然后調用

awk –f awk-script-file input-files



提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: