精品丰满熟女一区二区三区_五月天亚洲欧美综合网_亚洲青青青在线观看_国产一区二区精选

  • <menu id="29e66"></menu>

    <bdo id="29e66"><mark id="29e66"><legend id="29e66"></legend></mark></bdo>

  • <pre id="29e66"><tt id="29e66"><rt id="29e66"></rt></tt></pre>

      <label id="29e66"></label><address id="29e66"><mark id="29e66"><strike id="29e66"></strike></mark></address>
      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > 每天一個Linux命令之a(chǎn)wk命令詳解

      每天一個Linux命令之a(chǎn)wk命令詳解

      時間: 佳洲1085 分享

      每天一個Linux命令之a(chǎn)wk命令詳解

        每天學(xué)一個Linux命令,你就能往前進(jìn)步一點(diǎn)。下面由學(xué)習(xí)啦小編為大家整理了每天一個Linux命令之a(chǎn)wk命令詳解,希望對大家有幫助!

        每天一個Linux命令之a(chǎn)wk命令詳解

        簡介

        awk是一個強(qiáng)大的文本分析工具,相對于grep的查找,sed的編輯,awk在其對數(shù)據(jù)分析并生成報告時,顯得尤為強(qiáng)大。簡單來說awk就是把文件逐行的讀入,以空格為默認(rèn)分隔符將每行切片,切開的部分再進(jìn)行各種分析處理。

        awk有3個不同版本: awk、nawk和gawk,未作特別說明,一般指gawk,gawk 是 AWK 的 GNU 版本。

        awk其名稱得自于它的創(chuàng)始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首個字母。實(shí)際上 AWK 的確擁有自己的語言: AWK 程序設(shè)計語言 , 三位創(chuàng)建者已將它正式定義為“樣式掃描和處理語言”。它允許您創(chuàng)建簡短的程序,這些程序讀取輸入文件、為數(shù)據(jù)排序、處理數(shù)據(jù)、對輸入執(zhí)行計算以及生成報表,還有無數(shù)其他的功能。

        每天一個Linux命令之a(chǎn)wk命令使用方法

        awk '{pattern + action}' {filenames}

        盡管操作可能會很復(fù)雜,但語法總是這樣,其中 pattern 表示 AWK 在數(shù)據(jù)中查找的內(nèi)容,而 action 是在找到匹配內(nèi)容時所執(zhí)行的一系列命令?;ɡㄌ?{})不需要在程序中始終出現(xiàn),但它們用于根據(jù)特定的模式對一系列指令進(jìn)行分組。 pattern就是要表示的正則表達(dá)式,用斜杠括起來。

        awk語言的最基本功能是在文件或者字符串中基于指定規(guī)則瀏覽和抽取信息,awk抽取信息后,才能進(jìn)行其他文本操作。完整的awk腳本通常用來格式化文本文件中的信息。

        通常,awk是以文件的一行為處理單位的。awk每接收文件的一行,然后執(zhí)行相應(yīng)的命令,來處理文本。

        調(diào)用awk

        有三種方式調(diào)用awk

        1.命令行方式

        awk [-F field-separator] 'commands' input-file(s)

        其中,commands 是真正awk命令,[-F域分隔符]是可選的。 input-file(s) 是待處理的文件。

        在awk中,文件的每一行中,由域分隔符分開的每一項稱為一個域。通常,在不指名-F域分隔符的情況下,默認(rèn)的域分隔符是空格。

        2.shell腳本方式

        將所有的awk命令插入一個文件,并使awk程序可執(zhí)行,然后awk命令解釋器作為腳本的首行,一遍通過鍵入腳本名稱來調(diào)用。

        相當(dāng)于shell腳本首行的:#!/bin/sh

        可以換成:#!/bin/awk

        3.將所有的awk命令插入一個單獨(dú)文件,然后調(diào)用:

        awk -f awk-script-file input-file(s)

        其中,-f選項加載awk-script-file中的awk腳本,input-file(s)跟上面的是一樣的。

        本章重點(diǎn)介紹命令行方式。

        每天一個Linux命令之a(chǎn)wk命令實(shí)例

        假設(shè)last -n 5的輸出如下

        [root@www ~]# last -n 5 <==僅取出前五行

        root pts/1 192.168.1.100 Tue Feb 10 11:21 still logged in

        root pts/1 192.168.1.100 Tue Feb 10 00:46 - 02:28 (01:41)

        root pts/1 192.168.1.100 Mon Feb 9 11:41 - 18:30 (06:48)

        dmtsai pts/1 192.168.1.100 Mon Feb 9 11:41 - 11:41 (00:00)

        root tty1 Fri Sep 5 14:09 - 14:10 (00:01)

        如果只是顯示最近登錄的5個帳號

        #last -n 5 | awk '{print class="main">