.NET運行庫合集MultiPack .NET Windows Desktop Installer v1.3
227MB / 03-27
PsTool(Sysinternals 實用工具)官方最新版 v2.5.1
5.04MB / 01-05
Windows Install Tool(WIT) v24.5.11 綠色免費版 32/64位
26MB / 11-15
小番茄DirectX修復(fù)工具 v1.2.0.28 官方安裝版
65MB / 02-10
Visual C++微軟經(jīng)典運行庫合集 2024.06.09 中文靜默安裝版(32+64
32.8MB / 01-08
Game Runtime Libraries Package(GRL游戲常用運行庫) v6.2.25.04
1.7GB / 04-09
cab格式.NET Framework 3.5離線安裝包(NetFx3.cab)
69MB / 03-23
QuickJump(快速跳轉(zhuǎn)) v4.0 綠色免費版
5.2MB / 02-22
Stardock Start11(Win11經(jīng)典開始菜單工具) v2.08.1 無限制中文版
37.34MB / 05-16
聯(lián)想加速球單文件版 V5.0.40.8151 綠色便攜版
3.3MB / 01-15
-
-
-
TweakNow WinSecret Plus for Windows 10/11 v6.6.2 安裝免費版 系統(tǒng)增強 / 25.4MB
-
Power Automate(微軟自動化工具) v2.55.158.25087 官方安裝版 系統(tǒng)增強 / 443MB
-
-
Game Runtime Libraries Package(GRL游戲常用運行庫) v6.2.25.04 系統(tǒng)增強 / 1.7GB
-
Visual C++ 微軟常用運行庫合集 32/64位 v2025.04.08 靜默整合版 系統(tǒng)增強 / 77.4MB
-
StartAllBack(win11更改開始菜單) v3.9.7.5268 中文一鍵安裝版 系統(tǒng)增強 / 1.75MB
-
StartAllBack for Win11開始菜單增強工具 v3.9.7.5268 中文最新 系統(tǒng)增強 / 2.04MB
-
詳情介紹
gawk 是 GNU 的 awk,具有很強的文本處理功能,簡潔優(yōu)美.
awk 是一個程式語言,對于文本處理具有很強的功能。對於文字檔里的資料做修改、比對、抽取等的處理,awk 能夠以很短的程式
輕易地完成。
awk 能夠依照使用者的定義格式來分解輸入,也可依照使用者定義的格式來打印輸出。
awk 名稱的由來是由它的原始設(shè)計者的姓氏之第一個字母而命名:Alfred V. Aho, Peter J. Weinberger, Brian W. Kernighan。
awk最初在1977年完成。一個新版本的awk在1985年被發(fā)表,它的功能比舊版本增強不少。
gawk 是GNU所做的 awk,gawk 最初在1986年完成,之後不斷地被改進、更新,gawk 包含 awk 的所有功能。
幫助文檔:
gawk: option requires an argument -- h
Usage: gawk [POSIX or GNU style options] -f progfile [--] file ...
Usage: gawk [POSIX or GNU style options] [--] 'program' file ...
POSIX options: GNU long options: (standard)
-f progfile --file=progfile
-F fs --field-separator=fs
-v var=val --assign=var=val
Short options: GNU long options: (extensions)
-b --characters-as-bytes
-c --traditional
-C --copyright
-d[file] --dump-variables[=file]
-D[file] --debug[=file]
-e 'program-text' --source='program-text'
-E file --exec=file
-g --gen-pot
-h --help
-i includefile --include=includefile
-l library --load=library
-L [fatal] --lint[=fatal]
-n --non-decimal-data
-M --bignum
-N --use-lc-numeric
-o[file] --pretty-print[=file]
-O --optimize
-p[file] --profile[=file]
-P --posix
-r --re-interval
-S --sandbox
-t --lint-old
-V --version
To report bugs, see node `Bugs' in `gawk.info', which is
section `Reporting Problems and Bugs' in the printed version.
gawk is a pattern scanning and processing language.
By default it reads standard input and writes standard output.
Examples:
gawk '{ sum += $1 }; END { print sum }' file
gawk -F: '{ print $1 }' /etc/passwd
awk 用法:awk ' pattern {action} '
變量名 含義
ARGC 命令行變元個數(shù)
ARGV 命令行變元數(shù)組
FILENAME 當(dāng)前輸入文件名
FNR 當(dāng)前文件中的記錄號
FS 輸入域分隔符,默認為一個空格
RS 輸入記錄分隔符
NF 當(dāng)前記錄里域個數(shù)
NR 到目前為止記錄數(shù)
OFS 輸出域分隔符
ORS 輸出記錄分隔符
1、awk '/101/' file 顯示文件file中包含101的匹配行。
awk '/101/,/105/' file
awk '$1 == 5' file
awk '$1 == "CT"' file 注意必須帶雙引號
awk '$1 * $2 >100 ' file
awk '$2 >5 && $2<=15' file
2、awk '{print NR,NF,$1,$NF,}' file 顯示文件file的當(dāng)前記錄號、域數(shù)和每一行的第一個和最后一個域。
awk '/101/ {print $1,$2 + 10}' file 顯示文件file的匹配行的第一、二個域加10。
awk '/101/ {print $1$2}' file
awk '/101/ {print $1 $2}' file 顯示文件file的匹配行的第一、二個域,但顯示時域中間沒有分隔符。
3、df | awk '$4>1000000 ' 通過管道符獲得輸入,如:顯示第4個域滿足條件的行。
4、awk -F "|" '{print $1}' file 按照新的分隔符“|”進行操作。
awk 'BEGIN { FS="[: \t|]" }
{print $1,$2,$3}' file 通過設(shè)置輸入分隔符(FS="[: \t|]")修改輸入分隔符。
Sep="|"
awk -F $Sep '{print $1}' file 按照環(huán)境變量Sep的值做為分隔符。
awk -F '[ :\t|]' '{print $1}' file 按照正則表達式的值做為分隔符,這里代表空格、:、TAB、|同時做為分隔符。
awk -F '[][]' '{print $1}' file 按照正則表達式的值做為分隔符,這里代表[、]
5、awk -f awkfile file 通過文件awkfile的內(nèi)容依次進行控制。
cat awkfile
/101/{print "\047 Hello! \047"} --遇到匹配行以后打印 ' Hello! '.\047代表單引號。
{print $1,$2} --因為沒有模式控制,打印每一行的前兩個域。
6、awk '$1 ~ /101/ {print $1}' file 顯示文件中第一個域匹配101的行(記錄)。
7、awk 'BEGIN { OFS="%"}
{print $1,$2}' file 通過設(shè)置輸出分隔符(OFS="%")修改輸出格式。
8、awk 'BEGIN { max=100 ;print "max=" max} BEGIN 表示在處理任意行之前進行的操作。
{max=($1 >max ?$1:max); print $1,"Now max is "max}' file 取得文件第一個域的最大值。
(表達式1?表達式2:表達式3 相當(dāng)于:
if (表達式1)
表達式2
else
表達式3
awk '{print ($1>4 ? "high "$1: "low "$1)}' file
9、awk '$1 * $2 >100 {print $1}' file 顯示文件中第一個域匹配101的行(記錄)。
10、awk '{$1 == 'Chi' {$3 = 'China'; print}' file 找到匹配行后先將第3個域替換后再顯示該行(記錄)。
awk '{$7 %= 3; print $7}' file 將第7域被3除,并將余數(shù)賦給第7域再打印。
11、awk '/tom/ {wage=$2+$3; printf wage}' file 找到匹配行后為變量wage賦值并打印該變量。
12、awk '/tom/ {count++;}
END {print "tom was found "count" times"}' file END表示在所有輸入行處理完后進行處理。
13、awk 'gsub(/\$/,"");gsub(/,/,""); cost+=$4;
END {print "The total is $" cost>"filename"}' file gsub函數(shù)用空串替換$和,再將結(jié)果輸出到filename中。
1 2 3 $1,200.00
1 2 3 $2,300.00
1 2 3 $4,000.00
awk '{gsub(/\$/,"");gsub(/,/,"");
if ($4>1000&&$4<2000) c1+=$4;
else if ($4>2000&&$4<3000) c2+=$4;
else if ($4>3000&&$4<4000) c3+=$4;
else c4+=$4; }
END {printf "c1=[%d];c2=[%d];c3=[%d];c4=[%d]\n",c1,c2,c3,c4}"' file
通過if和else if完成條件語句
awk '{gsub(/\$/,"");gsub(/,/,"");
if ($4>3000&&$4<4000) exit;
else c4+=$4; }
END {printf "c1=[%d];c2=[%d];c3=[%d];c4=[%d]\n",c1,c2,c3,c4}"' file
通過exit在某條件時退出,但是仍執(zhí)行END操作。
awk '{gsub(/\$/,"");gsub(/,/,"");
if ($4>3000) next;
else c4+=$4; }
END {printf "c4=[%d]\n",c4}"' file
通過next在某條件時跳過該行,對下一行執(zhí)行操作。
14、awk '{ print FILENAME,$0 }' file1 file2 file3>fileall 把file1、file2、file3的文件內(nèi)容全部寫到fileall中,格式為
打印文件并前置文件名。
15、awk ' $1!=previous { close(previous); previous=$1 }
{print substr($0,index($0," ") +1)>$1}' fileall 把合并后的文件重新分拆為3個文件。并與原文件一致。
16、awk 'BEGIN {"date"|getline d; print d}' 通過管道把date的執(zhí)行結(jié)果送給getline,并賦給變量d,然后打印。
17、awk 'BEGIN {system("echo \"Input your name:\\c\""); getline d;print "\nYour name is",d,"\b!\n"}'
通過getline命令交互輸入name,并顯示出來。
awk 'BEGIN {FS=":"; while(getline< "/etc/passwd" >0) { if($1~"050[0-9]_") print $1}}'
打印/etc/passwd文件中用戶名包含050x_的用戶名。
18、awk '{ i=1;while(i<NF) {print NF,$i;i++}}' file 通過while語句實現(xiàn)循環(huán)。
awk '{ for(i=1;i<NF;i++) {print NF,$i}}' file 通過for語句實現(xiàn)循環(huán)。
type file|awk -F "/" '
{ for(i=1;i<NF;i++)
{ if(i==NF-1) { printf "%s",$i }
else { printf "%s/",$i } }}' 顯示一個文件的全路徑。
用for和if顯示日期
awk 'BEGIN {
for(j=1;j<=12;j++)
{ flag=0;
printf "\n%d月份\n",j;
for(i=1;i<=31;i++)
{
if (j==2&&i>28) flag=1;
if ((j==4||j==6||j==9||j==11)&&i>30) flag=1;
if (flag==0) {printf "%02d%02d ",j,i}
}
}
}'
19、在awk中調(diào)用系統(tǒng)變量必須用單引號,如果是雙引號,則表示字符串
Flag=abcd
awk '{print '$Flag'}' 結(jié)果為abcd
awk '{print "$Flag"}' 結(jié)果為$Flag
由于篇幅有限,建議多看一下腳本之家的教程。
下載地址
人氣軟件
Visual C++ 微軟常用運行庫合集 32/64位 v2025.04.08 靜默整合版
DragonKMS(MicroKMS)KMS激活工具 神龍版 v24.09.29 綠色免費版
微軟常用運行庫合集2024 32/64位 2024.11.07 官方最新版
MicroKMS激活工具 for win10/win11 v23.06.09 神龍版 中文綠色免
StartAllBack(Win7開始菜單恢復(fù)工具) v3.8.10.5172 中文安裝免費
StartAllBack for Win11開始菜單增強工具 v3.9.7.5268 中文最新
筆記本 顯示器關(guān)閉工具
OSSQ Win10/Win11系統(tǒng)版本一鍵轉(zhuǎn)換 V7.0 綠色免費版
raspppoe.sys(win7寬帶連接651的解決)
cab格式.NET Framework 3.5離線安裝包(NetFx3.cab)
相關(guān)文章
-
gawk GNU 的 awk,具有很強的文本處理功能
這篇文章主要介紹了gawk GNU 的 awk,具有很強的文本處理功能,需要的朋友可以參考下...
-
windws下面使用gawk的方法
現(xiàn)在經(jīng)常要處理到一些日志數(shù)據(jù),對這些數(shù)據(jù)進行分析處理,但首先要對日志數(shù)據(jù)進行etl處理,如果簡單的數(shù)據(jù)格式處理,使用gawk是最理想不過了,下面我們就介紹如何使用gawk...
-
Linux下的AWK入門教程
這篇文章主要介紹了Linux下的AWK入門教程,AWK工具甚至能夠自編程實現(xiàn)功能,是非常強大的文本分析工具,需要的朋友可以參考下...
-
Linux命令之a(chǎn)wk命令使用介紹
這篇文章主要介紹了Linux命令之a(chǎn)wk命令使用介紹,本文只是簡單的講解了sed的語法以及使用實例,需要的朋友可以參考下...
-
Linux下的命令行編程工具Awk的入門簡介
這篇文章主要介紹了Linux下的命令行編程工具Awk的入門簡介,Awk主要是用來進行一些系統(tǒng)中的文件操作,需要的朋友可以參考下...
-
Linux如何使用awk文本處理工具進行數(shù)組排序
awk是款文本處理工具,提供多種功能,那么如何使用awk進行數(shù)組排序呢?下面小編就給大家詳細介紹下Linux中如何使用awk進行數(shù)組排序...
下載聲明
☉ 解壓密碼:chabaoo.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個軟件總是不能下載的請在評論中留言,我們會盡快修復(fù),謝謝!
☉ 下載本站資源,如果服務(wù)器暫不能下載請過一段時間重試!或者多試試幾個下載地址
☉ 如果遇到什么問題,請評論留言,我們定會解決問題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請購買正版。
☉ 本站提供的Gawk for Windows 4.1 for Windows附Gawk使用方法資源來源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。