l inux命令awk整理Linux command awk collationFormat:
Standard format: awk {' [BEGIN} , pre initialized or sentencepattern matching operation statement [END] {} {} ]' <filename >end statement
Awk script:
Close to awk as a programming language, can write scripts toperform, only need to place a statement to explain the script(after the first line of the script #!) with the location ofthe awk, the awk can be as a script executable programexecution.
Vari abl e:
$0: current entire line content.
The line delimiter entered by ORS: (default is newline)Line delimiter for RS: output (default is newline)
The number of rows that NR: has processed (+1 per row)NF: the number of fields in the current row (how many is thelast $?)?
FS: field delimiter
Number of ARGC: command l ine arguments
ARGV: command line parameter array (subscript starts at 0)Relation operation:
Less than <:
<=: is less than or equal to
==: equals
=: is not equal to!
More than >:
~: regular expression matching
~: does not match the regular expression!
A, b:c: , three element expression, conforms to the a condition,performs B, otherwise executes C. Equivalent to "if (a) {b";"}else{c"; }"
Arithmetic operation:
Floating point arithmetic.
Logical operation:
"&&", "| |" and "!" (respectively, with or without) .
Matching range:
"/a/, /b/" (from the matching/a/ to/b/, and SED) , different,awk is not only the first match, when matched to the B afterthe stop, then, a will start again, until then, to B and thenstop, wait, a. . . . . .
"NR==2, NR==5", from the second line to the fifth line.Assignment operation:
A =: is a two assignment, is a comparison of the sameRegular expression:
Do not support the "\<", "\>", "(\ \)", "\{\}"
Program control instruction:
Next: reads the next line of text and starts the script againfrom scratch.
Exit: jumps out of all operations and executes the END segmentdirectly.
Internal function:
Getline successfully read a line after the return of 1, readto the end of the file after the return of 0, but if the filedoes not exist, it will return-1, if the getline in the "while()", may be because the return -1 into the dead cycle.
Internal function (string) :
Split: divides strings into fields by field separators,respectively, into arrays.
Command format: split (string, array, f ield delimiter)Or use the default field delimiter (the FS parameter in awk) :Split (string, array)
The array generated by the function; the first element has anindex of 1.
Delete: removes array elements
Command format: delete< array name >[] .
Sub: is much like "s/a/b/" in sed, which turns the childsubstring into a subsequence.
Command format: sub (regular expression, alternate string)Sub (regular expression, substitution string, target location)The regular expression "/ /" (including slash) .
Replace strings with "" "(double quotes) , including. (allstrings should be enclosed indouble quotes, not single quotes)
The target position is generally similar to the field positionof "$1".
Sub replaces only the first match, similar to "s/a/b/""Gsub: is similar to "s/a/b/g", global replacement.
Command format: gsub (regular expression, alternate string)Gsub (regular expression, substitution string, targetlocation)
Index: returns the location of the substring that firstappeared in the string
Command format: index (string, substring) (string, substring,printed directly, enclosed in double quotes)
Length: returns string length
Command format: length (string) (string is printed directly,enclosed in double quotes)
Match: returns the position in the string that matches theregular expression for the first time
Command format: match (string, regular expression) (string isprinted directly, enclosed in double quotes)
Use
Awk will assign the current row to the variable "$0" first"Awk differs from sed, although each time a row is read into thecache, it is cut by the delimiter defined by the"FS"parameter.When outputting, it will also use the "OFS"parameter to changethe separator when outputting.
The "OFMT" parameter is used to set the format of the outputdigits.
Use the "-F" parameter to change the delimiter, if you usemultiple symbols to do separate, need to use "[]" inparentheses.
Example: "awk -F '\t]' " (when awk encounters spaces and tabsare translated into a delimiter)
The awk command is divided into two parts, the mode and theoperation, and the model is equivalent to the built-in if. . . . . .Then".
Similar to the SED address, is the implementation of theprovisions of the operation behind what time, and the operationmust be included in the "{}" (braces) and follow mode. Patternsnever appear in curly braces.
The matching character"~"wave number is used to define matchesin the pattern.
Example: "awk'$1 ~ /Bill/' " (matches Bill in the first field)
"Awk'$1. . . ~ /Bill/' " (Bill is not found in the first field)When performing string operations, strings must be enclosed in"" "" (double quotes) , and single quotation marks do not!Example: "awk'$1 =" CT "' " (the first field for CT)
Awk' {pr int ($1 > 5? "High": "low"} ' )
Awk variables are initialized without defining type, and awkautomatically changes the type of the variable depending on thecontext.
Awk variables can be named with letters and numbers, but theycannot begin with numbers.
The awk command can contain more than one set of patterns andoperations. With {in} respectively.
Awk can be added in the "BEGIN" command, the command in thecommand in the execution of read text (no text will read beforeexecution) , generally used for variable initialization orprint the first page.
In awk, you can add the "END" command section that executesafter processing all the text.
In awk, if you want to redirect the results of the commandexecution, you need to add "" "" "" "" (double quotes) to theredirection file name
Example: "awk print $1" test ">' {} ' " (the first field outputto test file)
In awk, through the "getline" command (enclosed in doublequotes) , enter information (rather than files) from the pipe,the standard input.
Example: "awk"LS"' { | getline a; print a} ' " (each matching modeoutput line)
Printf format "printf"%-12s "a" (the percent is used to specifythe output format settings, minus is left aligned, 12 is thelength of S is a string, a is printed variable)
Be careful
Open the pipeline in awk, must use the pipe symbol "|" afterthe same name to close thepipeline. Otherwise thepipelinewillremain open, behind the input will also be sent to an rvaluepipeline.
"Awk" LS "' { | getline a; print a} ' ' {close (getline a) } ' "The variable loop in the "for" loop in awk can only use onev ar i ab l e
"For (i=0; i<10; i++)" (cannot declare two variables in the samefor)
Arrays in awk use hash storage, so direct output arrays are not
necessarily indexed.
Arrays in awk can be indexed in strings, and strings need tobe enclosed in "" "double" quotes.
Printed arrays indexed by strings can be printed with for XXin < < > > to print all elements of an array.
Make sure that the entire awk command is enclosed in singlequotes.
Make sure all quotation marks appear in pairs in the command.Make sure you enclose the action statement with curly bracesand enclose conditional statements with parentheses.
Awk supports multidimensional arrays
See the 223 page
美国高防服务器提速啦专业提供美国高防服务器,美国高防服务器租用,美国抗攻击服务器,高防御美国服务器租用等。我们的海外高防服务器带给您坚不可摧的DDoS防护,保障您的业务不受攻击影响。HostEase美国高防服务器位于加州和洛杉矶数据中心,均为国内访问速度最快最稳定的美国抗攻击机房,带给您快速的访问体验。我们的高防服务器配有最高层级的DDoS防护系统,每款抗攻击服务器均拥有免费DDoS防护额度,让您...
Sharktech又称SK或者鲨鱼机房,是一家主打高防产品的国外商家,成立于2003年,提供的产品包括独立服务器租用、VPS云服务器等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等。之前我们经常分享商家提供的独立服务器产品,近期主机商针对云虚拟服务器(CVS)提供优惠码,优惠后XS套餐年付最低仅33.39美元起,支持使用支付宝、PayPal、信用卡等付款方式。下面以XS套餐为例,分享产品配...
racknerd发表了2021年美国独立日的促销费用便宜的vps,两种便宜的美国vps位于洛杉矶multacom室,访问了1Gbps的带宽,采用了solusvm管理,硬盘是SSDraid10...近两年来,racknerd的声誉不断积累,服务器的稳定性和售后服务。官方网站:https://www.racknerd.com多种加密数字货币、信用卡、PayPal、支付宝、银联、webmoney,可以付...