Sponsored Content
Full Discussion: advanced awk
Top Forums Shell Programming and Scripting advanced awk Post 302409288 by radoulov on Wednesday 31st of March 2010 03:03:10 PM
Old 03-31-2010
Quote:
Originally Posted by wakatana
Thank you guys,
To radulov: your solution is so similar to mine, don't you know why mine is not working ? Seems more similar to me Smilie
Comments inline.

Code:
BEGIN {                          # do not put BEGIN on a line by itself   
  i = 0                          # no need to initialize the counter,
                                 # awk does this automatically
  }                                 
{
  if (NF == 2) {
    currgrp = $1
    if ($2 ~ uname) {
      netgroups[i] = currgrp     # you shoud check if the username matches 
      i ++                       # when NF == 2 too
      }
    }        
  else
     {
      if ($1 ~ uname) {           # /uname/ matches litteral "uname"
         netgroups[i] = currgrp
         i ++
       }
     }
}

END {                             # do not put END on a line by itself
  for(j = 0; j < i;j ++)             
  {
    print netgroups[j]            # j not i!
  }
}

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Advanced Getopts

Hi all, I am using getops to get the arguments passed by the command line. However, I need to specify some rules regarding the parameter sent. For eg: I have script called MyScript which accept parameter d, I, E, r, u so the usage should be like this: MyScript So far, I finished... (2 Replies)
Discussion started by: stefan_hery
2 Replies

2. UNIX for Dummies Questions & Answers

Advanced LS?

My goal is simply to output a listing of all files in a directory and all subdirectories, one per line, ****with their full path****. The *** part is what I can't figure out. I can get one on a line and I like having the extra info, so I'm using ls -Rl right now. But what I get is just the... (2 Replies)
Discussion started by: bostonrobot
2 Replies

3. UNIX for Advanced & Expert Users

Advanced I/O

What is Stream Devices and Stream pipes? Explain Advanced I/O ? (1 Reply)
Discussion started by: thangappan
1 Replies

4. Shell Programming and Scripting

Advanced printf

I want to print: WELCOME TO MY WORLD Where "WELCOME TO MY WORLD" will be in green (32) and the underline will be in yellow (33). How can i do the above using printf. printf "`tput smul`\033 leaves both the text and the underline in green. (3 Replies)
Discussion started by: proactiveaditya
3 Replies

5. Programming

Books for advanced C

Simple question , what good book is next step in learning C. I finished with K&R and I want to go to the next step , so if someone has a good book please share title :D I looked for Advanced C programming by example but it is too expansive 400$ on Amazon :( So please tell me (7 Replies)
Discussion started by: solaris_user
7 Replies

6. UNIX for Advanced & Expert Users

Help with advanced wget

Hi All, I am trying to download large no of data using wget. the URLS are saved in a file. I want to want for a few seconds after every URL is downloaded so i saw the option -w with wget but it does not seem to work. Can any one give me a working usage. wget -i ../file1t -o ../Outlog.log -N -S... (2 Replies)
Discussion started by: johnasvini
2 Replies

7. Shell Programming and Scripting

Advanced sed/awk help

I have thousands of files in HTML that looks like this: .... .... .... <!-- table horaire --> <!-- table horaire --> <table border="0" cellspacing="0" cellpadding="0" class="tblHoraires" summary="Table des horaires de la ligne 12"> <tr> <th scope="row"... (13 Replies)
Discussion started by: charafantah
13 Replies

8. UNIX for Dummies Questions & Answers

Help with awk (making simple/advanced ini parser)

Hello I'm searching some kind of example (or ready-made solution, but I don't really want it, because I want to learn awk more), to make something like a parser in awk for something like this (I put example, because I don't really know how to explain this): line1=1 line2=0 line3=1... (23 Replies)
Discussion started by: jormung
23 Replies

9. Shell Programming and Scripting

Advanced AWK Regexp substring to int & Replace

Hi! I have a difficult problem, to step up a unknown version number in a text file, and save the file. It would be great to run script.sh and the version gets increased. Example the content of the textfile.txt hello version = x bye This include three steps 1. First find the char after... (2 Replies)
Discussion started by: Beachboy72
2 Replies

10. Shell Programming and Scripting

EXPECT - advanced help

Hi, i need to automate installation (console) of product and found except as solution.iam new to expect and know basics of expect. i am struck with the following cases and need help for them to continue: 1) in every screen of installation at the end we have kind of buttons which we need to... (7 Replies)
Discussion started by: sai Harika
7 Replies
POSTGREYREPORT(1)					User Contributed Perl Documentation					 POSTGREYREPORT(1)

NAME
postgreyreport - Fatal report for Postfix Greylisting Policy Server SYNOPSIS
postgreyreport [options...] -h, --help display this help and exit --version display version and exit --user=USER run as USER (default: postgrey) --dbdir=PATH find db files in PATH (default: /var/lib/postgrey) --delay=N report triplets that did not try again after N seconds (default: 300) --greylist-text=TXT text to match on for greylist maillog lines --skip_pool Skip report for 'subscriber pools' ( last 2 octets of IP found in PTR name ) --skip_dnsbl=RBL RBL server to query and skip reporting for any listed hosts (SLOW!!) --skip_clients=FILE PTR or IP or REGEXP of clients to skip in report --match_clients=FILE *ONLY* report if fatal *AND* PTR/IP of client matches --show_tries display the number of attempts failed triplets made in first column --show_time show entry time in maillog (single line only) --tab use tabs as separators for easy cut(1)ting --nosingle_line display sender/recipients grouped by ptr - ip --separate_by_subnet=TXT display TXT for every new /24 (ex: "================= " ) --separate_by_ip=TXT display TXT for every new IP (ex: " ") --check_sender=LIST one or more of: mx,mx/24,a,a/24 does DNS/A lookups for sender @domain and compares sending IP if match displays "MX" "A" or "MX/24" or "A/24" depending on LIST Note that --(skip|match)_clients can be specified multiple times and there are no default files. Same rules apply as postgrey's --whitelist-clients, see postgrey doc for more info. --skip_dnsbl can also be specified multiple times to query multiple DNSBL servers. DESCRIPTION
postgreyreport opens postgrey.db as read-only; reads a maillog via STDIN, extracts the triplets for any Greylisted lines and looks them up in postgrey.db. if the difference in first and last time seen is less than --delay=N then the triplet is considered fatal and displayed to STDOUT The report sorts by client IP address Note: unless you are using --lookup_by_subnet or excluding all known MTA pools you will likely have false fatal reports for "BigISPs". A message that was tried from every IP in SMTP pool before making it through will show up in the report for all of the attempted source IPs USAGE It is best to run postgreyreport against a maillog that is at least several hours old (yesterdays?) ( you be the judge on how old is acceptable ). if you run the report against a live maillog you are not giving legit MTA's enough time to try again and you will have lots of inaccurate information. o Ex usage: zcat /var/log/maillog.0.gz | ./postgreyreport [options] > postgreyreport.log or zcat /var/log/maillog.0.gz | ./postgreyreport --nosingle_line --check_sender=mx,a --separate_by_subnet=":================== " # 94 "=" total, some were omitted for clarity o Ex Output: ( POD wrapping will mess this up, view source ) :============================================================================================ unknown 4.29.43.31 marissa_mcclendonuu@abit.com.tw user1@recipient1.com jake_meyerdt@ali.com.tw user2@recipient1.com jenny_banks_sh@translate.ru user1@recipient2.com rvazquezpo@ali.com.tw user3@recipient1.com aep@notimexico.com user2@recipient1.com brittneystanley_ei@cetra.org.tw user2@recipient1.com brendasheehan_cw@lib.ru user2@recipient1.com :============================================================================================ lsanca1-ar5-127-189.biz.dsl.gtei.net 4.33.127.189 A fokkensr@lsanca1-ar5-127-189.biz.dsl.gtei.net user2@recipient1.com cyxlfrfwciercu@publicist.com user3@recipient4.com :============================================================================================ smtpout.mac.com 17.250.248.83 do_not_reply@apple.com user4@recipient5.com smtpout.mac.com 17.250.248.88 MX legituser@mac.com user6@recipient7.com :============================================================================================ HISTORY
1.14.3 20100321 Some additions, Leonard den Ottolander <leonard.den.ottolander.nl> New option: --tab Use tabs as separator in single line mode New option: --show_time Show entry time in maillog in single line mode 1.14.2 20040715 BUGFIX: (automatic) lookup-by-subnet support was broken, fixed. BUGFIX: corrected a few spelling errors new Option: --skip_pool Skip report for 'subscriber pools' 1.14.1 20040712 Changed --return-string to --greylist-text to match postgrey new Option: --skip_clients=FILE new Option: --match_clients=FILE new Option: --skip_dnsbl=RBL.DNS.NAME All 3 of the new options can be specified multiple times. Updated do_*_subsititions again to match postgrey 1.11.1 20040701 missing keys from DB are considered fatal triplets and included in report Changed --delay testing from "greater than" to "greater than or equal to" Fixed --help and --man switches Removed setuid Notice 1.6.4 20040618 Initial Public Version (postgrey/contrib) AUTHOR
Tom Baker <tbaker@bakerfl.org> perl v5.14.2 2012-02-03 POSTGREYREPORT(1)
All times are GMT -4. The time now is 11:38 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy