AWK: Difference between revisions
Content added Content deleted
(Created page with " cat stats_collection.log | grep svmem | awk '{print $1 $2," - ",$7}'") |
(→Basics) |
||
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Linux]] |
|||
__TOC__ |
|||
<br /> |
|||
= Basics = |
|||
Source: [https://www.geeksforgeeks.org/awk-command-unixlinux-examples/ geeksforgeeks.org] |
|||
⚫ | |||
* Awk is a scripting language used for manipulating data and generating reports. |
|||
* Field variables — $1, $2, $3, |
|||
* $0 is the entire line. |
|||
* Usage: |
|||
⚫ | |||
= Built In Variables = |
|||
* NR: current count of the number of lines. |
|||
awk '{print NR,$0}' employee.txt |
|||
* NF: count of the number of fields within the current input record. |
|||
awk '{print $1,$NF}' employee.txt |
|||
awk 'NR==3, NR==6 {print NR,$0}' employee.txt => Display Line From 3 to 6 |
|||
awk 'END { print NR }' employee.txt => Count the lines in a file |
|||
* FS: Field separator character. |
|||
The default is “white space”, meaning space and tab characters. |
|||
FS can be reassigned to another character (typically in BEGIN) to change the field separator. |
|||
= Examples = |
|||
* To find/check for any string in any column: |
|||
awk '{ if($3 == "B6") print $0;}' employee.txt |
|||
* Print lines with more than 10 characters: |
|||
awk 'length($0) > 10' employee.txt |
|||
<br /> |
|||
;References |
|||
<references/> |
|||
<br /> |
|||
<br /> |
|||
<br /> |
|||
{{DISQUS}} |
Latest revision as of 21:28, 3 June 2019
Basics
Source: geeksforgeeks.org
- Awk is a scripting language used for manipulating data and generating reports.
- Field variables — $1, $2, $3,
- $0 is the entire line.
- Usage:
cat stats_collection.log | grep svmem | awk '{print $1 " " $2," - ",$7}'
Built In Variables
- NR: current count of the number of lines.
awk '{print NR,$0}' employee.txt
- NF: count of the number of fields within the current input record.
awk '{print $1,$NF}' employee.txt awk 'NR==3, NR==6 {print NR,$0}' employee.txt => Display Line From 3 to 6 awk 'END { print NR }' employee.txt => Count the lines in a file
- FS: Field separator character.
The default is “white space”, meaning space and tab characters. FS can be reassigned to another character (typically in BEGIN) to change the field separator.
Examples
- To find/check for any string in any column:
awk '{ if($3 == "B6") print $0;}' employee.txt
- Print lines with more than 10 characters:
awk 'length($0) > 10' employee.txt
- References
{{#widget:DISQUS
|id=networkm
|uniqid=AWK
|url=https://aman.awiki.org/wiki/AWK
}}