Sponsored Content
Full Discussion: Calculate the total
Top Forums Shell Programming and Scripting Calculate the total Post 302888295 by ctsgnb on Thursday 13th of February 2014 04:33:40 PM
Old 02-13-2014
You can get the needed data in a lazy way (i have no doubt it may be improved) but you can go with something like :
Code:
grep -E "^" aaa*.log | sed 's/.log:/ /;s/^[^0-9]*//' | awk '{a[$2" "$1]++}END{for(i in a) print i, a[i]}' | sort -k 1

or
Code:
$ grep -E "^" aaa*.log | sed 's/\(..\).log:/ \1 /;s/^[^0-9]*//' | uniq -c | awk '{a[$4" "$2]+=$1;print}END{for(i in a)print "Tot",i,"=",a[i]}'
      2 2014 01 aaa  111
      2 2014 01 bbb  222
      4 2014 02 aaa  111
      5 2014 02 bbb  222
Tot aaa 2014 = 6
Tot bbb 2014 = 7

The formatting is then just a matter of cosmetic

Last edited by ctsgnb; 02-13-2014 at 06:13 PM..
 

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Awk help needed to calculate total

Hi all, I have a flat file like 10 steven 25 mike 47 Charles 127 Nancy 34 steven 23 mike 67 Charles 7761 Nancy 8 steven 54 mike 88 Charles 1267 Nancy I need to calculate the total of steven and all the members , for this I am using like grep "`sed -n 1p patterns.txt`"... (7 Replies)
Discussion started by: senthilkumar_ak
7 Replies

2. Shell Programming and Scripting

awk script to calculate total

Hi First field is the Record Type. A Record Type 5 can have multiple Record Type 6's before another Record Type 5 appears. I want to calculate the total of fields at position 8-11 on Record type 6 when Record Type 5 has a field at position 11-14 equals to '2222'. then it should delete the lines... (2 Replies)
Discussion started by: appsguy616
2 Replies

3. Shell Programming and Scripting

Calculate total sum from a file

The file content is dynamic and using this format: name1 number1 name2 number2 name3 number3 name4 number4 .................... Need a smooth way to calculate the sum of all the numbers in that file (number1 + number2 + number3 + number4........ = total ) (11 Replies)
Discussion started by: TehOne
11 Replies

4. Shell Programming and Scripting

Calculate total space, total used space and total free space in filesystem names matching keyword

Good afternoon! Im new at scripting and Im trying to write a script to calculate total space, total used space and total free space in filesystem names matching a keyword (in this one we will use keyword virginia). Please dont be mean or harsh, like I said Im new and trying my best. Scripting... (4 Replies)
Discussion started by: bigben1220
4 Replies

5. Shell Programming and Scripting

Calculate total of log by hour

Hi, Just wondering, is there anyway I can get the total of logs generated by hours ? Let say I have these logs, Sep 23 04:48:43 hsbcufs: NOTICE: realloccg /: file system full Sep 23 04:48:47 hsbcufs: NOTICE: alloc: /: file system full Sep 23 04:48:51 hsbcufs: NOTICE: realloccg /: file... (14 Replies)
Discussion started by: dehetoxic
14 Replies

6. Shell Programming and Scripting

Calculate total value from a row

HI I have a file # cat marks.txt MARKS LIST 2013 Name english french chinese latin total_marks wer 34 45 67 23 wqa 12 39 10 56 wsy 23 90 23 78 Now i need to find the total marks of each student using... (11 Replies)
Discussion started by: Priya Amaresh
11 Replies

7. Shell Programming and Scripting

Calculate the total 4 field based on the conditions

Please help me to write a script Match with ACNO & NAME if it matched calculate the total val1 val2 val3 and val4 and GT is total of ACNO wise.please check the output Table ----------------- 1005|ANDP|ACN|20|50|10|30 1005|ANDP|ACN|20|10|30|40 1001|AND|NAC|40|50|40|50... (22 Replies)
Discussion started by: kalia4u
22 Replies

8. Shell Programming and Scripting

Calculate total memory using free -m

Hi I am trying to calculate memory used by Linux System free -m total used free shared buffers cached Mem: 32109 31010 1099 0 3600 7287 -/+ buffers/cache: 20121 11987 Swap: 10239 1282 8957 Now according to my requirement Im calculating memory using below cmd free -m | awk 'NR==3{printf... (2 Replies)
Discussion started by: sam@sam
2 Replies
QSFILTER2(1)							qsfilter2 man page						      QSFILTER2(1)

NAME
qsfilter2 - Utility to generate mod_qos request line rules out from existing access/audit log data. SYNOPSIS
qsfilter2 -i <path> [-c <path>] [-d <num>] [-h] [-b <num>] [-p|-s|-m|-o] [-l <len>] [-n] [-e] [-u 'uni'] [-k <prefix>] [-t] [-f <path>] [-v 0|1|2] DESCRIPTION
mod_qos implements a request filter which validates each request line. The module supports both, negative and positive security model. The QS_Deny* directives are used to specify request line patterns which are not allowed to access the server (negative security model / black- list). These rules are used to restrict access to certain resources which should not be available to users or to protect the server from malicious patterns. The QS_Permit* rules implement a positive security model (whitelist). These directives are used to define allowed request line patterns. Request which do not match any of thses patterns are not allowed to access the server. qsfilter2 is an audit log analyzer used to generate filter rules (perl compatible regular expressions) which may be used by mod_qos to deny access for suspect requests (QS_PermitUri rules). It parses existing audit log files in order to generate request patterns covering all allowed requests. OPTIONS
-i <path> Input file containing request URIs. The URIs for this file have to be extracted from the servers access logs. Each line of the input file contains a request URI consiting of a path and and query. Example: /aaa/index.do /aaa/edit?image=1.jpg /aaa/image/1.jpg /aaa/view?page=1 /aaa/edit?document=1 These access log data must include current request URIs but also request lines from previous rule generation steps. It must also include request lines which cover manually generated rules. -c <path> mod_qos configuration file defining QS_DenyRequestLine and QS_PermitUri directives. qsfilter2 generates rules from access log data automatically. Manually generated rules (QS_PermitUri) may be provided from this file. Note: each manual rule must be represented by a request URI in the input data (-i) in order to make sure not to be deleted by the rule optimisation algorithm. QS_Deny* rules from this file are used to filter request lines which should not be used for whitelist rule generation. Example: # manually defined whitelist rule: QS_PermitUri +view deny "^[/a-zA-Z0-9]+/view?(page=[0-9]+)?$" # filter unwanted request line patterns: QS_DenyRequestLine +printable deny ".*[x00-x19].*" -d <num> Depth (sub locations) of the path string which is defined as a literal string. Default is 1. -h Always use a string representing the handler name in the path even the url does not have a query. See also -d option. -b <num> Replaces url pattern by the regular expression when detecting a base64/hex encoded string. Detecting sensibility is defined by a numeric value. You should use values higher than 5 (default) or 0 to disable this function. -p Repesents query by pcre only (no literal strings). -s Uses one single pcre for the whole query string. -m Uses one pcre for multipe query values (recommended mode). -o Does not care the order of query parameters. -l <len> Outsizes the query length by the defined length ({0,size+len}), default is 10. -n Disables redundant rules elimination. -e Exit on error. -u 'uni' Enables additional decoding methods. Use the same settings as you have used for the QS_Decoding directive. -p Repesents query by pcre only (no literal strings). Determines the worst case performance for the generated whitelist by applying each rule for each request line (output is real time filter duration per request line in milliseconds). -k <prefix> Prefix used to generate rule identifiers (QSF by default). -t Calculates the maximal latency per request (worst case) using the generated rules. -f <path> Filters the input by the provided path (prefix) only processing matching lines. -v <level> Verbose mode. (0=silent, 1=rule source, 2=detailed). Default is 1. Don't use rules you haven't checked the request data used to gen- erate it! Level 1 is highly recommended (as long as you don't have created the log data using your own web crawler). OUTPUT
The output of qsfilter2 is written to stdout. The output contains the generated QS_PermitUri directives but also information about the source which has been used to generate these rules. It is very important to check the validity of each request line which has been used to calculate the QS_PermitUri rules. Each request line which has been used to generate a new rule is shown in the output prefixed by "ADD line <line number>:". These request lines should be stored and reused at any later rule generation (add them to the URI input file). The subse- quent line shows the generated rule. At the end of data processing a list of all generated QS_PermitUri rules is shown. These directives may be used withn the configuration file used by mod_qos. EXAMPLE
./qsfilter2 -i loc.txt -c httpd.conf -m -e ... # ADD line 1: /aaa/index.do # 003 ^(/[a-zA-Z0-9-_]+)+[/]?.?[a-zA-Z]{0,4}$ # ADD line 3: /aaa/view?page=1 # --- ^[/a-zA-Z0-9]+/view?(page=[0-9]+)?$ # ADD line 4: /aaa/edit?document=1 # 004 ^[/a-zA-Z]+/edit?((document)(=[0-9]*)*[&]?)*$ # ADD line 5: /aaa/edit?image=1.jpg # 005 ^[/a-zA-Z]+/edit?((image)(=[0-9.a-zA-Z]*)*[&]?)*$ ... QS_PermitUri +QSF001 deny "^[/a-zA-Z]+/edit?((document|image)(=[0-9.a-zA-Z]*)*[&]?)*$" QS_PermitUri +QSF002 deny "^[/a-zA-Z0-9]+/view?(page=[0-9]+)?$" QS_PermitUri +QSF003 deny "^(/[a-zA-Z0-9-_]+)+[/]?.?[a-zA-Z]{0,4}$" SEE ALSO
qsexec(1), qsgeo(1), qsgrep(1), qslog(1), qslogger(1), qspng(1), qsrotate(1), qssign(1), qstail(1) AUTHOR
Pascal Buchbinder, http://opensource.adnovum.ch/mod_qos/ mod_qos utilities 10.8 June 2012 QSFILTER2(1)
All times are GMT -4. The time now is 08:58 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy