grep -v equivalent in perl


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting grep -v equivalent in perl
# 1  
Old 05-19-2011
Bug grep -v equivalent in perl

I have to do grep -v in a perl script. I want to exclude blank lines and lines having visitor.

Code:
#grep -v visitor abc.txt |grep '.'
 
 
file:abc.txt
1340 not booked 16D:D9 tourist 8 
1341 not booked 16C:D4 tourist 25
1342 not booked 16D:C4 visitor 7 
1343 not booked 01C:D9 visitor 6 
1344 not booked 01D:C9 visitor 43
1345 not booked 16C:C9 visitor 7 
1346 not booked 01D:D4 visitor 8 
1347 not booked 01C:C4 visitor 90
1348 not booked 16D:D5 tourist 32
1349 not booked 16C:D6 tourist 23


Last edited by pludi; 05-19-2011 at 01:53 AM..
# 2  
Old 05-19-2011
You can execute the same command within perl also

Code:
#!/bin/perl
my $var=`grep -v visitor abc.txt |grep '.'`;
print $var;

regards,
Ahamed
This User Gave Thanks to ahamed101 For This Post:
# 3  
Old 05-19-2011
Hi,

Try next command:
Code:
$ perl -e '@a = <>; print +(grep { ! /^(?:\s*)$|(?i:visitor)/ } @a)' infile

Regards,
Birei
# 4  
Old 05-19-2011
Will be better is you show us your script , anyway :
Code:
 perl -n -e 'if (!/visitor|^$/){print;}' file

An alternative (and nice) perl idiom:
Code:
perl -n -e 'print unless /visitor|^$/;' file


Last edited by Klashxx; 05-19-2011 at 05:04 AM..
# 5  
Old 05-19-2011
Thank so much ahamed101, birei and klashxx. ahamed101 script is very useful.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. AIX

Need grep -v Equivalent for AIX

Need grep -v "Hello" equivalent for AIX (9 Replies)
Discussion started by: mohtashims
9 Replies

2. Shell Programming and Scripting

Perl : Perl equivalent to the ksh | and ;

Ive been trying to move to Perl. It has been a struggle. My question is, is there a good resource that explains nesting statements. As an example. To change primary Factory CTS 1.9.0(46) P1 *Slot 1 CTS 1.10.2(42) P1 To primary *Slot 1 CTS 1.10.2(42) P1 ... (5 Replies)
Discussion started by: popeye
5 Replies

3. Shell Programming and Scripting

sed Equivalent for awk/grep

Any equivalent command using awk or grep? sed -n "/^$(date --date='10 minutes ago' '+%b %_d %H:%M')/,\$p" /abc.log (7 Replies)
Discussion started by: timmywong
7 Replies

4. Shell Programming and Scripting

Perl equivalent substitution

hi Geeks, my input file contains data like => 53 - Deewana Kar Raha Hai.mp3 54 - Hale Dil.mp3 55 - Ishq Sufiyana.mp3 56 - Abhi Kuch Dino Se.mp3 57 - Pee Loon Hoto Ki Sargam.mp3 I had used sed command to remove the prefix from the file name like sed 's/^\ it gives me the perfect... (4 Replies)
Discussion started by: lohith.dutta
4 Replies

5. Shell Programming and Scripting

What is the equivalent of NR (awk) in perl?

Hello, I searched online; it seems that perl use $NR as NR in awk; however it does not work for me. For example, how to re-write the following awk using perl: awk '{ print NR}' inputfile---------- Post updated at 01:55 PM ---------- Previous update was at 12:49 PM ---------- I found... (2 Replies)
Discussion started by: littlewenwen
2 Replies

6. Shell Programming and Scripting

GAWK/GREP Equivalent

What is GAWK equivalent to greps -B 5 -A 5? zgrep -i "^oct 20" /var/log/syslog*|grep -iB 5 -A 5 'postfix\/pickup /var/log/syslog.1.gz:Oct 20 01:55:01 elmo CROND: (mail) CMD (/usr/bin/python -S /usr/lib64/mailman/cron/gate_news) /var/log/syslog.1.gz:Oct 20 02:00:01 elmo CROND: (mail) CMD... (5 Replies)
Discussion started by: metallica1973
5 Replies

7. Shell Programming and Scripting

need perl equivalent

Dear All, Good day, can any of you help me in the following problem: I need to find the perl equivalent for the following commandline grep characters |awk '{print \$2}'Expecting your reply and thanks in advance. Warm regards Fredrick. (4 Replies)
Discussion started by: Fredrick
4 Replies

8. Shell Programming and Scripting

strtok equivalent in perl

Hi All, Is their any equivalent for strtok (in c) to use in perl script. Thanks in advance. JS (1 Reply)
Discussion started by: jisha
1 Replies

9. Shell Programming and Scripting

perl equivalent to grep -c

Guess the subject lines says it all. What is the perl equivalent to grep -c -c, --count Suppress normal output; instead print a count of match- ing lines for each input file. With the -v, --invert- match option (see below), count non-matching lines. ... (6 Replies)
Discussion started by: popeye
6 Replies

10. Shell Programming and Scripting

export equivalent command in PERL

Hi I need an equivalent command in PERL for the following. export LC_ALL=C; I hope this is the command. Please confirm this and correct me if i am wrong $ENV{LC_ALL}="C"; Thanks and Regards Ammu (1 Reply)
Discussion started by: ammu
1 Replies
Login or Register to Ask a Question