That looks like a fine illustration of awk's basic principles actually I'll just comment it a bit more:
Code:
# awk code blocks work like CONDITION{ code }WHENTOPRINT
# For each line, { code } gets run when CONDITION is true
# and the line gets printed back out when WHENTOPRINT is true.
# The code block doesn't have to be executed for WHENTOPRINT to
# cause it to print a line.
#
# CONDITION is default true if not given. WHENTOPRINT is default false.
awk '
# Special code section run before any lines are read
BEGIN{
# Field separator. It defaults to whitespace but can be anything.
# Lines read get split on it, put into special variables $1,$2,...
# all the way up to NF, the last field. NF is the number, $NF is the
# last field itself. $0 is the entire line.
# ( $ is an operator, by the way. You can do N=1; print $N to print field 1)
FS="*"
# When the 'print' command is used, awk puts the line back
# together from the $1,$2,...$NF fields before printing it, you can
# control what it joins together fields with.
OFS="*"}
# The code block gets run whenever the regex /^ABC/ is true --
# i.e. whenever the line begins with ABC.
/^ABC/{
# You can set fields, not just read them, handy for altering text
# On the go. Here, we change the 7th field into 13 for any line
# beginning with ABC.
$7="13";
# You can also tell awk when to print explicitly, by using the 'print'
# command. By default it prints out the entire line assembled from
# the current contents of $1,$2,...$NF
print }' filename
Last edited by Corona688; 12-14-2011 at 11:54 AM..
hai
i am very new to unix.
i am having two files like this.
first.properties
cache.ZA.TL_CCY=SELECT trim(CCY_CODE)||trim(COUNTRY_CODE)||trim(CITY_CODE) AS... (4 Replies)
Hey Fellas.
I am new to scripting. I have searched through the forums and found a lot of good info, but I can't seem to get any of it to work together. I am trying to find a particular sting in a file, and if the next string matches certain criteria, replace it with a string from a csv... (6 Replies)
hello everyone
my file contains many records, the following is a sample:
BEGIN
ASX1500000050002010120000000308450201012000177
ASX1100002000000201012000000038450201012000220
ASX1600100005000201012000000038450020101200177
ASX1900100006000201067000000058450020101200177... (2 Replies)
I get a file which has all its content in a single row.
The file contains xml data containing 3000 records, but all in a single row, making it difficult for Unix to Process the file.
I decided to insert a new line character at all occurrences of a particular string in this file (say replacing... (4 Replies)
Hello,
I have a 100 line code. I have given a sample of it below:
ABC*654654*1*54.54*21.2*87*1*654654654654
CCC*FS*FS*SFD*DSF
GGG*FGH*CGB*FBDFG*FGDG
ABC*654654*1*57.84*45.4*88*2*6546546545
CCC*WSF*SG*FGH*GHJ
ADA*AF*SFG*DFGH*FGH*FGTH
I need to select the line starting with "ABC" its... (6 Replies)
Hi
I am not the best scripter in the world and have run into a issue which you might be able to guide me on...
I have two files.
File1 :
A123, valueA, valueB
B234, valueA, valueB
C345, valueA, valueB
D456, valueA, valueB
E567, valueA, valueB
F678, valueA, valueB
File2:
C345,... (5 Replies)
Hi,
I want to achieve something similar to what described in another post:
The difference is I want to add the line if the pattern is not found.
File 1:
A123, valueA, valueB
B234, valueA, valueB
C345, valueA, valueB
D456, valueA, valueB
E567, valueA, valueB
F678, valueA, valueB
... (11 Replies)
Hi ,
i have a file with data as below.This is same file. But actual file contains to many rows.
i want to search for a string "Field 039 00" and delete that line and previous 3 lines in that file.. Can some body suggested me how can i do using either sed or awk command ?
Field 004... (7 Replies)
Hi,
I currently have a problem that I need to read a file line by line.
After I read it line by line there are some commands in which I have to change a specific string.(In my case, I have to make a script that changes all the passwords into hash value)
Here is a sample input... (3 Replies)
Hello,
I am looking for a specific situation in a text file. The conditions are,
> <CompoundName>
InChI=1S/C5H12NO2/c1-5(2)4-8-6(3)7/h5H,4H2,1-3H3/q+1
I am looking for cases where the line "> <CompoundName>" is followed by a line that contains the string "InChI=" without regard to... (5 Replies)
Discussion started by: LMHmedchem
5 Replies
LEARN ABOUT HPUX
fmt
fmt(1) General Commands Manual fmt(1)NAME
fmt - format text
SYNOPSIS
width] [file...]
DESCRIPTION
The command is a simple text formatter that fills and joins lines to produce output lines of (up to) the number of characters specified in
the width option. The default width is 72. concatenates the arguments. If none are given, formats text from the standard input.
Blank lines are preserved in the output, as is the spacing between words. does not fill lines beginning with a period for compatibility
with Nor does it fill lines starting with
Indentation is preserved in the output and input lines with differing indentation are not joined (unless is used).
can also be used as an in-line text filter for the command:
reformats the text between the cursor location and the end of the paragraph.
Options
recognizes the following options:
Crown margin mode.
Preserve the indentation of the first two lines within a paragraph and align the left margin of each subsequent line with that
of the second line. This is useful for tagged paragraphs.
Split lines only.
Do not join short lines to form longer ones. This prevents sample lines of code, and other such "formatted" text, from being
unduly combined.
Fill output lines to up to
width columns.
WARNINGS
The width option is acceptable for BSD compatibility, but it may go away in future releases.
SEE ALSO nroff(1), vi(1).
fmt(1)