12:15pm, Greg Schiedler wrote: > OK I'm trying to modify the code below to recognize an additional next if statement. > I have > included a snip of the file that the code uses an input. > > Greg > > next if /Acct-Session-Id = "00000000"/; This statment works! >
A 'next if /...../' is a short form for: if ($_ =~ m/..../) { next; } So... whatever is in between the forward slashes is the pattern you are looking for within the string contained in your default variable ($_). A single equals sign is *assignment*, where a double equal sign is a test of numeric equality (and 'eq' is a test to see if two strings are equal). HTH, Paul > # I added this statement. I don't understand the /'s in the statement. And my > guess is that > I need to modify the statement to properly work with an IP over a number or string. > > next if /NAS-IP-Address = "192.168.0.1"/; This statement does not work. > > next if /User-Name = "$userskp"/; This statement works! > > Can anyone tell me why my simple addition will not work as I think it should. > > Greg :-) > > > <Code Snipit> > ... > ... > require 'usrmon.cf'; > > if (-M "$file" < .04) { > > $date= (localtime)[3]; > > dbmopen(%hash, "$dbfile", 0600); > > open (FILE, "$file") || die; > open (FILEBK, ">>$filebk") || die; > while (<FILE>) { > $/ = ''; > next if /Acct-Session-Id = "00000000"/; > next if /NAS-IP-Address = "192.168.0.1"/; > next if /User-Name = "$userskp"/; > print FILEBK; > > if (/Acct-Status-Type = Stop/ || /Acct-Status-Type = Start/) { > if (/User-Name = "([^"]+)"/){ > $key= $1; > } > if (/Acct-Status-Type = Stop/) { > if (/Acct-Session-Time = (\d+)/) { > $used{$key}+= $1; > $uses{$key}++; > } > } > } > } > close(FILE); > open (FILE, ">$file"); > print FILE "\n"; > > > > <RADIUS Log Snip> > ... > ... Ascend-PreSession-Time = 27 > CVX-Modem-Begin-Modulation = "V.90" > CVX-Modem-Error-Correction = "V.42" > CVX-Modem-Data-Compression = "V.42bis" > Timestamp = 1075939364 > Timestamp = 1075939362 > > Wed Feb 4 16:03:11 2004 > Acct-Status-Type = Start > User-Name = "[EMAIL PROTECTED]" > Acct-Session-Id = "0000062A" > Framed-IP-Address = 10.0.0.2 > NAS-IP-Address = 192.168.0.1 > Timestamp = 1075939456 > Acct-Delay-Time = 0 > Timestamp = 1075939391 > > Wed Feb 4 16:04:00 2004 > Acct-Status-Type = Stop > User-Name = "[EMAIL PROTECTED]" > Acct-Session-Id = "0000062A" > Acct-Session-Time = 49 > Framed-IP-Address = 10.0.0.2 > NAS-IP-Address = 192.168.0.1 > Timestamp = 1075939505 > Acct-Delay-Time = 0 > Timestamp = 1075939440 > > Wed Feb 4 16:04:21 2004 > Acct-Status-Type = Start > NAS-Identifier = "cvx00.domain.com" > ... > ... > <End RADIUS Log Snipit> > > -- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > <http://learn.perl.org/> <http://learn.perl.org/first-response> > > ------------------------------------------------- "Welcome to downtown Coolsville--population: us." ------------------------------------------------- -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>