Vishal Vasan wrote: > Hi All, > > I have a file with the following contents (temp.txt). > A1110 > G1115 > B1110 > C1111 > D1111 > E1113 > F1115 > and so on. I have to read the contents from this file and create 2 > seperate files. The 1st file contains the lines ending with 0 and 1 > while the 2nd file contains the lines ending with 3 and 5. I can do > this easily by creating a seperate perl script. But I have a > constraint. I should not write a seperate file to do this processing. > > I am calling the perl from a shell script. Is there any way of calling > the Perl program "in-line" with all the required parameters? "In-line" > means no seperate file containing the script.
Yes, do something like this (assuming a Bourne-type shell; others will have to help you with csh): #!/bin/sh ... perl <<'EOT' - input.dat while(<>) { ... } EOT The "-" means that your script is coming from STDIN. See perldoc perlrun. > > Is it worth doing this? Is there a better way of doing it? How about using awk? awk '/[01]$/ {print >>"01.dat"} /[35]$/ {print >>"35.dat"}' input.dat -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>