Sponsored Content
Top Forums Shell Programming and Scripting awk --> math-operation in a array Post 302866453 by IMPe on Tuesday 22nd of October 2013 04:03:40 AM
Old 10-22-2013
awk --> math-operation in a array

Hi

main object is categorize the difference of data-values (TLUFT02B - TLUFT12B).
herefor i read out data-files which are named
acording to the timeformat yyyymmddhhmm.
Code:
WR030B      266.48 Grad      0
WR050B      271.46 Grad      0
WR120B      268.11 Grad      0
WV030B        2.51 m/s       0
WV050B        3.47 m/s       0
WV120B        4.82 m/s       0
TLUFT02B      7.82 °C       0
TLUFT12B      6.87 °C       0
NSCHLB        0.00 mm        0

i try to read out the data and write it in a new file, with ...
Code:
#!/bin/bash
a=$(date --date '1 month ago' +%m)
e=$(date +%m)
y=$(date +%Y)
home=$HOME/Desktop/Messdaten/METE
cd $home
fpat=$(ls `eval echo $y{$a,$e}*` | tail -n 1584) ## 1584 Dateien entspr. 11 Tagen
for i in $fpat
do
      if test -f "$i"
      then
         Dy=${i:2:2} Dm=${i:4:2} Dd=${i:6:2}
        UZh=${i:8:2} UZm=${i:10:2}
        res=$(awk '{A[$1]=$2}END{print A["WV120B"], A["WR120B"], A["NSCHLB"], A["TLUFT12B"], A["TLUFT02B"]}' OFS='\t' "$i")
       T120=$(awk '{B[$1]=$2}END{print B["TLUFT12B"]}' "$i")
        T20=$(awk '{C[$1]=$2}END{print C["TLUFT02B"]}' "$i")
        printf "%s/%s/%s-%s:%s\t%s\t%s\n" $Dm $Dd $Dy $UZh $UZm "$res" "$T20-$T120"
      else
        DAT=$(date +%Y%m%d)
        printf "$DAT - Datei $i nicht vorhanden" >> "$home/../Logfiles/Log_$(date +%Y%m%d).log"
    fi
done

I want the difference of the values T20 and T120 -- blue!
but in the printf-comand gave me the listed values seperatet by the minus.
Please, can someone give me a hint
thanks in advance,
IMPe

Last edited by IMPe; 10-22-2013 at 05:19 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Array operation

Hi, I would like ask for you help for coding array operation. array= ( a b c d e f ) I would like to remove entry "d" from my array and import the remaining entries back to the array. Thanks. (3 Replies)
Discussion started by: phamp008
3 Replies

2. UNIX for Dummies Questions & Answers

awk logic and math help

Hi, My file has 2 fields and millions of lines. variableStep chrom=Uextra span=25 201 0.5952 226 0.330693 251 0.121004 276 0.0736858 301 0.0646982 326 0.0736858 401 0.2952 426 0.230693 451 0.221004 476 0.2736858 Each field either has a... (6 Replies)
Discussion started by: wyarosh
6 Replies

3. Shell Programming and Scripting

awk math operation on two files

Hi, I need your help. I've got two files and i need to add 2nd line after occurrence of "Group No X" from data2.txt to 3rd line (after occurrence of "Group No X") from data1.txt. There is the same number of "Groups" in both files and the numbers of groups have the same pattern. data1.txt Group... (2 Replies)
Discussion started by: killerbee
2 Replies

4. Shell Programming and Scripting

Need help with AWK math

I am trying to do some math, so that I can compare the average of six numbers to a variable. Here is what it looks like (note that when I divide really big numbers, it isn't a real number): $ tail -n 6 named.stats | awk -F\, '{print$1}' 1141804 1140566 1139429 1134210 1084682 895045... (3 Replies)
Discussion started by: brianjb
3 Replies

5. Shell Programming and Scripting

Grab data between 2 keywords any do an array operation and write the file intact

Hi Unix Gurus, I need to grep for a block that is between a start and end keyword and then in between I need to find and replace a keyword. for eg: I need to search between Test = 000; and Test = 000; and find K9 and replace with M9 INPUT FILE Define { Replace = K9; Test =... (6 Replies)
Discussion started by: naveen@
6 Replies

6. Shell Programming and Scripting

awk math and csv output

Hi I have this list 592;1;Z:\WB\DOCS;/FS3_100G/FILER112/BU/MPS/DOCS;;;;\\FILER112\BUMPS-DOCS\;580,116,544,878 Bytes;656,561 ;77,560 592;2;Z:\WB\FOCUS;/FS3_100G/FILER112/BU/MPS/FOCUS;;;;\\FILER112\BUMPS-FOCUS\;172,430 Bytes;6 ;0 ... (12 Replies)
Discussion started by: nakaedu
12 Replies

7. Shell Programming and Scripting

awk in horizontal and vertical math

Based on input ail,UTT,id1_0,COMBO,21,24,21,19,85 al,UTHAST,id1_0,COMBO,342,390,361,361,1454 and awk code as awk -F, '{ K=0; for(i=NF; i>=(NF-4); i--) { K=K+$i; J=J+$i;} { print K } } END { for ( l in J ) printf("%s ",J); }' I'm trying to add columns and lines in single line. line... (6 Replies)
Discussion started by: busyboy
6 Replies

8. Shell Programming and Scripting

awk --> math-operation in data-record and joining with second file data

Hi! I have a pretty complex job - at least for me! i have two csv-files with meassurement-data: fileA ...... (2 Replies)
Discussion started by: IMPe
2 Replies

9. Shell Programming and Scripting

Count math using awk

Hi expert, I have log : TOTAL-TIME : 2125264636 DATA-BYTES-DOWN : 3766111307032 DATA-BYTES-UP : 455032157567 DL = (3766111307032/2125264636)/1024 = 1.73 UL = (455032157567/2125264636)/1024 = 0.21 I want the result : TOTAL = 1.94 ... (4 Replies)
Discussion started by: justbow
4 Replies

10. UNIX for Beginners Questions & Answers

Copy last few lines of a file, perform math operation and iterate further

Hi, I am trying to generate a data of following order: 4 0 1 642 643 4 642 643 1283 1284 4 1283 1284 1924 1925 4 1924 1925 2565 2566 4 2565 2566 3206 3207 4 3206 3207 3847 3848 4 3847 3848 4488 4489 4 4488 4489 5129 5130 ---------------------- 4 1 2 643 644 4 643 644 1284... (6 Replies)
Discussion started by: SaPa
6 Replies
DATE_PARSE_FROM_FORMAT(3)						 1						 DATE_PARSE_FROM_FORMAT(3)

date_parse_from_format - Get info about given date formatted according to the specified format

SYNOPSIS
array date_parse_from_format (string $format, string $date) DESCRIPTION
Returns associative array with detailed info about given date. PARAMETERS
o $format - Format accepted by DateTime.createFromFormat(3). o $date - String representing the date. RETURN VALUES
Returns associative array with detailed info about given date. EXAMPLES
Example #1 date_parse_from_format(3) example <?php $date = "6.1.2009 13:00+01:00"; print_r(date_parse_from_format("j.n.Y H:iP", $date)); ?> The above example will output: Array ( [year] => 2009 [month] => 1 [day] => 6 [hour] => 13 [minute] => 0 [second] => 0 [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 0 [errors] => Array ( ) [is_localtime] => 1 [zone_type] => 1 [zone] => -60 [is_dst] => ) SEE ALSO
DateTime.createFromFormat(3), checkdate(3). PHP Documentation Group DATE_PARSE_FROM_FORMAT(3)
All times are GMT -4. The time now is 07:25 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy