thanks for point out the missing value for one of the sensor. Finding the best values for each sensor is part of a larger script and at the end a few sensors have to be removed.
The list is concatenated and therefore the sensors are not sorted. I could, however, add a extra step to sort the file first.
Thanks for your suggestions!
I wasn't sure if sensor M01072-5 was missing or if sensor M01072-4 was there by mistake. You originally said that there would be three to six measurements per sensor and both of these sensors only had two measurements in your sample data.
Sorting your input file takes time and might rearrange the order of lines that have the same sort key, so if picking the 1st measurement from measurements with the same calculated "best" measurement matters, Yoda's suggestion is probably much better than sorting and then using a simpler awk script.
The script rdrtx1 just provided also looks good as long as none of your sensor reading calculations ($6 * $7) produce negative values.
I'm not sure I understand rdrtx1's script (please explain; thanks!), but it will not print the best measurement (i.e. the one with max $6*$7), but the first line for each sensor.
I'm not sure I understand rdrtx1's script (please explain; thanks!), but it will not print the best measurement (i.e. the one with max $6*$7), but the first line for each sensor.
RudiC is correct; rdrtx1's script uses the array a[$1] to store both the computed value of the best measurement and the contents of the line containing the best measurement. It can't do both.
Yoda's script uses a tab as the field separator (where the requested separator seems to be four spaces) and not only prints the line with the best measurement for each sensor, but also the computed measurement (which was not requested). Rearranging Yoda's script, changing OFS, leaving off the computed measurement, and dropping one unneeded assignment ($1 = $1); I came up with this script:
which produces the following output:
which matches the requested output except that the output order is different and the output for sensor M01072-5 (shown in red above) was missed in the original request. If the output order difference is important, you'll need to specify what order is needed. We can then either sort the results externally or modify the awk script (to preserve the input order) depending on what output order is required.
As always, if you're going to use this on a Solaris system; use /usr/xpg4/bin/awk, /usr/xpg6/bin/awk, or nawk instead of /usr/bin/awk or /bin/awk.
Hope this helps.
This User Gave Thanks to Don Cragun For This Post:
I tested the awk script provided by rdrtxt and it worked ... although I see now the double assignment problem.
---------- Post updated at 04:47 PM ---------- Previous update was at 04:24 PM ----------
Dear Don Cragun,
thanks for pointing out the problem with rdrtx1's awk script. I used a sorted table and did not realize the problem. I will use the modified script originally suggested by Yoda. Thanks!
I have multiple files with pattern of "*.tps (example:tps-20170307170421560-1053.tps)" in my log directory(files are in different sub directories).
entries in files are given below. I want to extract highest value of endtime accross all files.
"endTime :1488902691462"
... (7 Replies)
Hi,
Can any one help me...
the records are not deleting when I run the below script.
But if I issue the same delete command manually, the records are getting deleted.
script:
#!/bin/ksh
USAGE_STRING="USAGE $0 "
if
then
echo "SORRY you need to be user 'mqm'. Only 'mqm' has... (5 Replies)
Hello all, I am new to this and need some help or maybe steer me to the right direction!
I wrote a script to get the highest number and prints it on the screen, the script basically asks the user to input numbers, and then prints the highest number! very simple
it works like this
$sh max.sh... (8 Replies)
I am doing a loading process. I am loading data from a Oracle source to Oracle target.
For example there is an SQL statement:
Insert into emp_1
Select * from emp_2 where deptno=20;
In this case my source is emp_2 and loading into my target table emp_1. This process is automated. Now I... (3 Replies)
Hi,
I am having two tables. A & B
I want to know the total number of records in each table and need to store each value in some variables to process further in the code.
How it can be done ?
With Regards (2 Replies)
Hi,
Script copies records of two tables into another tables for backup before using oracle's import utility to restore from backup.
Now, suppose if the import utility fails then the script will again copy those records from the backup table to the original ones.
How to check whether all... (2 Replies)
I have 20000 numbers present in a file in each line like
25663,
65465,
74579,
56446,
..
..
I have created a table in db with single number column in it.
create table testhari (no number(9));
I want to insert all these numbers into that table. how can i do it?
can anybody please... (4 Replies)
Hi,
I have a file a.txt and it has values in it
Eg :-
I need to read through the file and find the number that is the greatest in them all.
Can any one assit me on this.
Thanks (30 Replies)