12-05-2006
search file, change existing value based on input (awk help)
I have a file (status.file) of the form:
valueA 3450
valueB -20
valueC -340
valueD 48
I am tailing a data.file, and need to search and modify a value
in status.file...the tail is:
tail -f data.file | awk '{ print $3, ($NF - $(NF-1)) }'
which will produce lines that look like this:
valueB -40
valueD 220
valueA -100
so I think what I would like to do is add a pipe to the tail command,
and send those lines to an awk command/program. It should then
search through status.file, and add the value to the correct line.
For example, using the above status.file, a line of data (after having
gone through the tail line) of
valueC -30
would result in status.file being changed to:
valueA 3450
valueB -20
valueC -370
valueD 48
Any help/tips would be greatly appreciated, thanks
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
Plz suggest me how can i change the date of a file.
Suppose my file has been created in some date and i want to give it present date.
How can i do this???? (2 Replies)
Discussion started by: adityam
2 Replies
2. Shell Programming and Scripting
Hi I am Newbie to Unix.Appreciate Help from forum
user would loada b.Csv File(Below example) in /data/m/ directory.Program need to read the b.csc to extract certain column and create a new file /data/d/ directory as csv file with new name.
User File Format
1232,samshouston,12345... (3 Replies)
Discussion started by: skywayterrace
3 Replies
3. Shell Programming and Scripting
Sorry Guys for not being able to explain in one of my earlier post.
I am now putting my requirement with the input file and desired output file.
In the below input file -
Transaction code is at position 31:40.
Business code is from position 318:321
TSCM00000005837 ... (7 Replies)
Discussion started by: varunrbs
7 Replies
4. Shell Programming and Scripting
Hi guys,
i have a file in below format.let me explain first what i am trying to do .
i am making a file from this file , will rearrange these columns, then i will run several command(start/stop mentioned in this file) on unix environment. my requirements :
1. i have 27 servers , on each server... (4 Replies)
Discussion started by: deepakiniimt
4 Replies
5. Shell Programming and Scripting
Hello I would like to ask for help with a script to search a directory that contains many log files and based on a users input after being prompted, they enter a date range down to the hour which searches the files that contain that range.
I dont know how to go about this. I am hoping that the... (5 Replies)
Discussion started by: lostincashe
5 Replies
6. Shell Programming and Scripting
In the below bash a file is downloaded when the program is opened and then that file is searched based on user input and the result is written to a new file.
For example, the bash is opened and the download.txt is downloaded, the user then enters the id (NA04520). The id is used to search... (5 Replies)
Discussion started by: cmccabe
5 Replies
7. Shell Programming and Scripting
I have a file hello.txt which was created today (today's date timestamp)
I wish to change its date timestamp (access, modified, created) to 1 week old i.e one week from now.
uname -a
SunOS mymac 5.11 11.2 sun4v sparc sun4v
Can you please suggest a easy way to do that ? (12 Replies)
Discussion started by: mohtashims
12 Replies
8. Shell Programming and Scripting
Hi Gurus,
I am SQL developer and new unix user.
I need to create some file and file content based on information in two files.
I have one file contains basic information below file1 and another exception file file2. the rule is if "zone' and "cd" in file1 exists in file2, then file name is... (13 Replies)
Discussion started by: Torhong
13 Replies
9. Shell Programming and Scripting
Field1=””
Field2=””
Field3=””
Field4=””
Field5=””
USER INPUT UP TO 5 FIELDS
awk -F , '{ if ( $3 == Field1 && $6 == Field2 && $8 == Field3 && $9 == Field4 && $10 == Field5) print $0 }' /tmp/rodney.outD
INPUT FILE (Rodney.outD):
... (3 Replies)
Discussion started by: rmerrird
3 Replies
10. Shell Programming and Scripting
In the awk below I am trying to copy the entire contents of $6 there may be multiple values seperated by a ;, to $8, if $8 is . (lines 1 and 3 are examples). If that condition $8 is not . (line2 is an example) then that line is skipped and printed as is. The awk does execute but prints the output... (3 Replies)
Discussion started by: cmccabe
3 Replies
TAIL(1) BSD General Commands Manual TAIL(1)
NAME
tail -- display the last part of a file
SYNOPSIS
tail [-F | -f | -r] [-q] [-b number | -c number | -n number] [file ...]
DESCRIPTION
The tail utility displays the contents of file or, by default, its standard input, to the standard output.
The display begins at a byte, line or 512-byte block location in the input. Numbers having a leading plus ('+') sign are relative to the
beginning of the input, for example, ``-c +2'' starts the display at the second byte of the input. Numbers having a leading minus ('-') sign
or no explicit sign are relative to the end of the input, for example, ``-n 2'' displays the last two lines of the input. The default start-
ing location is ``-n 10'', or the last 10 lines of the input.
The options are as follows:
-b number
The location is number 512-byte blocks.
-c number
The location is number bytes.
-f The -f option causes tail to not stop when end of file is reached, but rather to wait for additional data to be appended to the
input. The -f option is ignored if the standard input is a pipe, but not if it is a FIFO.
-F The -F option implies the -f option, but tail will also check to see if the file being followed has been renamed or rotated. The
file is closed and reopened when tail detects that the filename being read from has a new inode number. The -F option is ignored if
reading from standard input rather than a file.
-n number
The location is number lines.
-q Suppresses printing of headers when multiple files are being examined.
-r The -r option causes the input to be displayed in reverse order, by line. Additionally, this option changes the meaning of the -b,
-c and -n options. When the -r option is specified, these options specify the number of bytes, lines or 512-byte blocks to display,
instead of the bytes, lines or blocks from the beginning or end of the input from which to begin the display. The default for the -r
option is to display all of the input.
If more than a single file is specified, each file is preceded by a header consisting of the string ``==> XXX <=='' where XXX is the name of
the file unless -q flag is specified.
EXIT STATUS
The tail utility exits 0 on success, and >0 if an error occurs.
SEE ALSO
cat(1), head(1), sed(1)
STANDARDS
The tail utility is expected to be a superset of the IEEE Std 1003.2-1992 (``POSIX.2'') specification. In particular, the -F, -b and -r
options are extensions to that standard.
The historic command line syntax of tail is supported by this implementation. The only difference between this implementation and historic
versions of tail, once the command line syntax translation has been done, is that the -b, -c and -n options modify the -r option, i.e., ``-r
-c 4'' displays the last 4 characters of the last line of the input, while the historic tail (using the historic syntax ``-4cr'') would
ignore the -c option and display the last 4 lines of the input.
HISTORY
A tail command appeared in PWB UNIX.
BSD
June 29, 2006 BSD