Manipulating text with awk, gawk and sed


The awk, gawk and sed commands on Linux are incredibly versatile tools for controling text, rearranging columns, creating reports and modifying file content.Using awk and gawk To

select portions of command

output utilizing gawk, you can attempt commands like those below. The very first shows the first field in the output of the date command. The second shows the last field. Because NF represents the variety of fields in the command output,$NF represents the worth of the last field.$date|awk ‘< 'Sat $date|awk' print $NF'2023 Note that on Linux systems today, awk is normally a symbolic link to glare, so you can type either command and get the same result. Here's what you'll most likely see when you do a long listing of the awk executable:$ls -l/ usr/bin/awk lrwxrwxrwx. 1 root 4 Jul 21 2021/ usr/bin/awk - > gawk The” l “at the start identifies/ usr/bin/awk as a symbolic link.To break a line of text into pieces, the text should utilize a common delimiter to separate the pieces you need to work with. The default delimiter for both awk or gawk is white area. The -F argument, however, allows you to define whatever delimiter separates the pieces of text that you are working with. As you probably know, any character can act as a delimiter as long as it’s only utilized as a delimiter. Delimiters are normally blanks, tabs, colons, semicolons and such. You can, nevertheless, break on a letter or other character if your information require that.To reorganize the parts of a line of text separated by commas, you could utilize a command like this:$echo” one, 2, three”|

gawk-F’,”print $3, $2,$ 1’3 two one While “x” is seldom utilized as a delimiter, even that would work.$echo onextwoxthree|gawk-F ‘x”print$2,$3,$1’2 3 one NOTE: Without the commas, the outcome would be “onetwothree”.

Note that gawk permits you to set up the pieces of information in any order and that you can disregard fields that

you do not want to include in your output.Breaking on white space Repetitive blanks(a/k/a”

white space “)act as single delimiters unlike other characters. Regardless of the variety of blank characters are in each stretch of white area, the strings of letters are easily rearranged and shown with single blanks between the words.$echo one two 3|gawk- F”’print$2,$3,$ 1′ two 3 one Editing files “in location”You can likewise utilize gawk to directly make modifications to files by utilizing the inplace alternative. In the example listed below, a new file is produced using

the fortune command and then line numbers are contributed to each line utilizing gawk. NR represents the

line number which is followed by a period and an area character.$fortune > fortune$gawk -i inplace ‘print NR”.” $0 ‘fortune To view the changes, show the file once again.$feline fortune 1. Work is of two kinds: initially, altering the position of matter at or near 2. the earth’s surface relative to other matter; second, informing other people 3. to do so. 4.– Bertrand Russell To alter the text, you could use a command like the one below which will change”two “with”2 “: $awk-i inplace ‘gsub(” two “, “2” ) 1’fortune$feline fortune 1. Work is of 2 kinds: first, modifying … Source

Leave a Reply

Your email address will not be published. Required fields are marked *