Untitled Document











현재 하고 있는 일들

0
Total 37 articles, 2 pages/ current page is 1
   

 

  View Articles
Name  
   박우진 
Homepage  
   http://www.madpark.co.kr
Subject  
   Useful one-line programs using awk..
Many useful awk programs are short, just a line or two. Here is a collection of useful, short programs to get you started. Some of these programs contain constructs that haven't been covered yet. The description of the program will give you a good idea of what is going on, but please read the rest of the Info file to become an awk expert!

Most of the examples use a data file named `data'. This is just a placeholder; if you were to use these programs yourself, you would substitute your own file names for `data'.

Since you are reading this in Info, each line of the example code is enclosed in quotes, to represent text that you would type literally. The examples themselves represent shell commands that use single quotes to keep the shell from interpreting the contents of the program. When reading the examples, focus on the text between the open and close quotes.


awk '{ if (length($0) > max) max = length($0) }
END { print max }' data
This program prints the length of the longest input line.

awk 'length($0) > 80' data
This program prints every line that is longer than 80 characters. The sole rule has a relational expression as its pattern, and has no action (so the default action, printing the record, is used).

expand data | awk '{ if (x < length()) x = length() }
END { print "maximum line length is " x }'
This program prints the length of the longest line in `data'. The input is processed by the expand program to change tabs into spaces, so the widths compared are actually the right-margin columns.

awk 'NF > 0' data
This program prints every line that has at least one field. This is an easy way to delete blank lines from a file (or rather, to create a new file similar to the old file but from which the blank lines have been deleted).

awk 'BEGIN { for (i = 1; i <= 7; i++)
print int(101 * rand()) }'
This program prints seven random numbers from zero to 100, inclusive.

ls -lg files | awk '{ x += $5 } ; END { print "total bytes: " x }'
This program prints the total number of bytes used by files.

ls -lg files | awk '{ x += $5 }
END { print "total K-bytes: " (x + 1023)/1024 }'
This program prints the total number of kilobytes used by files.

awk -F: '{ print $1 }' /etc/passwd | sort
This program prints a sorted list of the login names of all users.

awk 'END { print NR }' data
This program counts lines in a file.

awk 'NR % 2 == 0' data
This program prints the even numbered lines in the data file. If you were to use the expression `NR % 2 == 1' instead, it would print the odd numbered lines.


    

 


Prev
   Quark and gluon jet differences

민정이
Next
   vi editor 활용하기 - 바꾸기

박우진


Copyright 1999-2022 Zeroboard / skin by madpark