真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux命令中的awk linux命令中的cd

Linux入門系列——awk命令詳解

awk是一個(gè)強(qiáng)大的文本分析工具,與grep、sed相比,awk在對(duì)數(shù)據(jù)分析并生成報(bào)告時(shí),顯得有很大的優(yōu)勢(shì)。

公司主營(yíng)業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出卓尼免費(fèi)做網(wǎng)站回饋大家。

awk有三個(gè)不同的版本:awk、nawk和gawk,在沒有做特殊說時(shí)的時(shí)候默認(rèn)的就是gawk,gawk是awk的GNU版本。

其中command是真正的awk命令,-F表示域的分隔符,是個(gè)可選項(xiàng)。Filename是等待處理的文件

將所有的awk命令寫入到一個(gè)文件,并使用該文件有X權(quán)限,然后awk命令解釋器作為腳本的首行,也就是說可以把腳本最開始的 #!/bin/bash 換成 #!/bin/awk

最后直接執(zhí)行這個(gè)腳本文件就行了。

-f 指定要加載的awk腳本,是一個(gè)文件。Filename是等待處理的文件

awk的工作流程是這樣的:讀入一行后(最后面帶有” ”的),就按-F指定的分隔符來將該行劃分成N個(gè)區(qū)域,$0表示所有的區(qū)域,$1表示第一個(gè)域,$2表示第二個(gè)域,依此類推,$n表示第n個(gè)域。

總結(jié):awk先執(zhí)行BEGIN內(nèi)的命令,然后再讀入文件中的行,接著就是按照指定的分隔符將該行分成N個(gè)區(qū)域,然后再來執(zhí)行模式所對(duì)應(yīng)的動(dòng)作action。然后,再來讀入第二行。。再重復(fù)執(zhí)行action,直到所有的行都處理完成。最后再執(zhí)行END中的命令。

注意:' // '之間是支持正則表達(dá)式的,如果此處只有pattern,而沒有action,那么awk默認(rèn)會(huì)把匹配到的行打印出來。

awk中的print還可以使用C語言中的printf來替代。在輸出格式比較復(fù)雜的時(shí)候使用printf函數(shù)會(huì)比print函數(shù)要更直觀一些,如下:

還可以使用-v key=value來自定義變量。如下:

awk中的條件語句是從C中借鑒過來的

語法:if (condition) {then-body} else {else-body}

例如使用awk來統(tǒng)計(jì)某個(gè)目錄下的普通文件的大小,不包括子目錄的,并過濾掉目錄。

循環(huán)語句也和C中的一樣,支持while、do/while、for、continue、break等關(guān)鍵字。

break和continue常用于循環(huán)中;

在awk中,數(shù)組的下標(biāo)可以是數(shù)字或字母。一般awk中的數(shù)組的作用是從記錄中收集信息,用于計(jì)算總和、統(tǒng)計(jì)單詞等。

在awk中要?jiǎng)h除一個(gè)元素的時(shí)候使用 delete array[index]

更多請(qǐng)參見awk官方文檔[]

linux awk命令詳解

awk是一個(gè)強(qiáng)大的文本分析工具,相對(duì)于grep的查找,sed的編輯,awk在對(duì)數(shù)據(jù)分析并生成報(bào)告時(shí),顯得尤為強(qiáng)大。

簡(jiǎn)單來說awk就是把文件逐行的讀入,以空格為默認(rèn)分隔符將每行切片,切開的部分再進(jìn)行各種分析處理。

awk有三個(gè)不同的版本:awk、nawk和gawk,未作特別說明,一般指gawk,gawk是awk的GNU版本。

之所以叫awk是因?yàn)槠淙×巳粍?chuàng)始人Alfred Aho,Peter Weinberger,和Brian Kernighan的Family

Name的首字符。

awk格式:

格式: sed -n '3p' sed.txt

找誰干啥(條件動(dòng)作)

awk格式

#取出/etc/passwd 第1行的第1列和第3列

awk -F: 'NR==1{print $1,$3}' /etc/passwd

awk 選項(xiàng) '條件{動(dòng)作}' /etc/passwd

條件: 哪一行,過濾什么內(nèi)容

動(dòng)作: print輸出與顯示 ,計(jì)算....

awk取行:與sed類似

案例01:取出sed.txt的第2行

[root@oldboy81-golden-lnb /oldboy]# cat sed.txt

101,oldgirl,CEO

102,zhangya,CTO

103,lidao007,COO

104,yy,CFO

105,feixue,CIO

110,lidao,COCO

[root@oldboy81-golden-lnb /oldboy]# awk 'NR==2' sed.txt

102,zhangya,CTO

#awk '行號(hào) 等于 2' sed.txt

#NR awk內(nèi)置變量

Number of Record 記錄號(hào)(行號(hào))

案例02:取出sed.txt中包含oldboy或lidao的行

[root@oldboy81-golden-lnb /oldboy]# sed -rn '/oldboy|lidao/p' sed.txt

103,lidao007,COO

110,lidao,COCO

[root@oldboy81-golden-lnb /oldboy]# awk '/oldboy|lidao/' sed.txt

103,lidao007,COO

110,lidao,COCO

案例03:取出文件第2行到第5行內(nèi)容

#awk '行號(hào)大于等于2 并且 行號(hào)小于等于5' sed.txt

#方法01

awk 'NR=2 NR=5' sed.txt #必會(huì)

表示并且.

#方法02

sed -n '2,5p' sed.txt

#方法03 了解

awk 'NR==2,NR==5' sed.txt #從行號(hào)是2的行開始 到 行號(hào)是5的行結(jié)束( 了解)

案例04:取出文件第3行到最后一行內(nèi)容

[root@oldboy81-golden-lnb /oldboy]# awk 'NR = 3' sed.txt

103,lidao007,COO

104,yy,CFO

105,feixue,CIO

110,lidao,COCO

[root@oldboy81-golden-lnb /oldboy]# sed -n '3,$p' sed.txt

103,lidao007,COO

104,yy,CFO

105,feixue,CIO

110,lidao,COCO

案例05:取出從包含oldboy的行到lidao的行

[root@oldboy81-golden-lnb /oldboy]# cat sed.txt

101,oldgirl,CEO

102,zhangya,CTO

103,lidao007,COO

104,yy,CFO

105,feixue,CIO

110,lidao,COCO

root@oldboy81-golden-lnb /oldboy]# sed -n '/old/,/lidao/p' sed.txt

101,oldgirl,CEO

102,zhangya,CTO

103,lidao007,COO

[root@oldboy81-golden-lnb /oldboy]# awk '/old/ , /lidao/' sed.txt

101,oldgirl,CEO

102,zhangya,CTO

103,lidao007,COO

每日一條linux 命令 : awk

一次讀取一行文本,按輸入分隔符進(jìn)行切片,切成多個(gè)組成部分,將每片直接保存在內(nèi)建的變量中,$1,$2,$3....,引用指定的變量,可以顯示指定段,或者多個(gè)段。如果需要顯示全部的,需要使用$0來引用??梢詫?duì)單個(gè)片段進(jìn)行判斷,也可以對(duì)所有段進(jìn)行循環(huán)判斷。

其默認(rèn)分隔符為空格

awk [options] 'program' FILE......

[options]說明

主要有兩種模式

1、 awk [options] 'scripts' file1,file2.....

在這種模式中,scripts主要是命令的堆砌,命令之間用 分號(hào) 分割;對(duì)輸入的文本行進(jìn)行處理,通過命令 print,printf 或是輸出重定向的方式顯示出來,這里經(jīng)常用到的知識(shí)點(diǎn)是:awk的內(nèi)置變量,以及命令print和printf的使用

2、 awk [options] 'PATTERN{action}' file,file2.....

在這種模式中,最重要的是5種模式和5種action的使用,以及awk的數(shù)組的使用和內(nèi)置函數(shù)

其格式化輸出: printf FORMAT,item1,item2....

例子: awk '{printf "%-8s %-8s %-8s %-18s %-22s %-15s\n",$1,$2,$3,$4,$5,$6}' netstat.txt

格式符

修飾符

輸出重定向

awk [option] 'PATTERN{action}' file1,file2....

linux里awk是做什么的,請(qǐng)?jiān)敿?xì)說明

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

awk有三個(gè)不同的版本:awk、nawk和gawk,未作特別說明,一般指gawk,gawk是awk的GNU版本。

之所以叫awk是因?yàn)槠淙×巳粍?chuàng)始人Alfred Aho,Peter Weinberger,和Brian Kernighan的Family Name

的首字符。

使用方法:

awk'{pattern+action}'{filenames}

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

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

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

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

1、命令行方式

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

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

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

2、shell腳本方式

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

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

可以換成:#!/bin/awk

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

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

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


分享題目:linux命令中的awk linux命令中的cd
網(wǎng)頁鏈接:http://weahome.cn/article/docjsdo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部