Visit Our UNIX and Linux User Community


how to let the perl script to run for each file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting how to let the perl script to run for each file
# 1  
Old 10-09-2009
how to let the perl script to run for each file

Hi,

I have more than 1 files in the directory. In bash, I can use
Code:
cd /work
 
for x in `ls`
do
:
: 
done

to run for each file in the directory.

How about in perl script?
Code:
filepath="ABC1"
open(FILE, $filepath) or die "$filepath cannot be opened.";
while(<FILE>) {
 :
 :
}
close(<file>)

because the open command just open the file ABC1 only. If I have ABC2, ABC3,ABC4 and ABC5 files.... how to let perl script also can run for the other files?

Thanks for you advise.

Last edited by pludi; 10-09-2009 at 02:18 AM.. Reason: code tags please...
# 2  
Old 10-09-2009
Probably easiest to understand:
Code:
my @files = </work/*>;
foreach my $file (@files) {
    open my $FH, '<', $file or die "Can't open file $file: $!";
    # do your magic here
    close $FH;
}

Don't forget your warnings, strictures, and diagnostics.

Last edited by pludi; 10-28-2009 at 08:51 AM..

Previous Thread | Next Thread
Test Your Knowledge in Computers #530
Difficulty: Medium
Unicode was supports encoding 1,112,064 possible characters.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script run in a case statement call to run a php file, also Perl

Linux System having all Perl, Python, PHP (and Ruby) installed From a Shell script, can call a Perl, Python, PHP (or Ruby ?) file eg eg a Shell script run in a case statement call to run a php file, also Perl or/and Python file??? Like #!/usr/bin/bash .... .... case $INPUT_STRING... (1 Reply)
Discussion started by: hoyanet
1 Replies

2. Windows & DOS: Issues & Discussions

Update sh file using VBA before perl script is run

I have a VBA that creates a new directory folder and creates a new text file in that directory. I am trying to run a perl script from the VBA and have created a batch file that gets called from the VBA. That bat file uses a shell file to run a script. When the batch file is called I get the error... (0 Replies)
Discussion started by: cmccabe
0 Replies

3. UNIX for Dummies Questions & Answers

Perl Script:how to find how many parameters are required to run the script

How to find how many parameters are required to run a Perl script? (1 Reply)
Discussion started by: Lakshman_Gupta
1 Replies

4. Shell Programming and Scripting

Perl system() to run a script

Hello, I'm trying to run "csso" (minify css) in a CGI script from the web panel. That is not working: Returns error 0; my $cmd = qq`csso stylesheet.css > stylesheet.min.css`; system($cmd); But that is working: my $cmd = qq`echo 'blabla' > stylesheet.min.css`; system($cmd); I'm... (12 Replies)
Discussion started by: madispuk
12 Replies

5. Shell Programming and Scripting

Run shell script on different machine using perl script

I want to execute my shell script on remote machine using SSH in perl script. Please help me with syntax. (2 Replies)
Discussion started by: james1988
2 Replies

6. Shell Programming and Scripting

run remote perl script

Hello i want create perl script to connect remotely to another machine and run perl script please note that the remote script check for different variables remotely and not located on local machine also i want to know how to send interactive variables i am trying to make script to... (2 Replies)
Discussion started by: mogabr
2 Replies

7. Shell Programming and Scripting

Run perl script with multiple file arguments

Hello everyone, I have two types of files in a directory: *.txt *.info I have a perl script that uses these two files as arguments, and produces a result file: perl myScript.pl abc.txt abc.xml How can I run this script (in a "for" loop , looping through both types of files)... (4 Replies)
Discussion started by: ad23
4 Replies

8. Shell Programming and Scripting

perl script to check if empty files are created and delete them and run a shell script

I have a local linux machine in which the files are dumped by a remote ubuntu server. If the process in remote server has any problem then empty files are created in local machine. Is there any way using perl script to check if the empty files are being created and delete them and then run a shell... (2 Replies)
Discussion started by: hussa1n
2 Replies

9. UNIX for Dummies Questions & Answers

cronjob to run perl script

Hi all Recently i had finished a perl script. When i run manually, the script work fine. But when i wanted to put the script in cron, it didn't get the same output as it run manually. I felt that it only execute the script until certain line then it stop as i see most of the related files didn't... (6 Replies)
Discussion started by: AirWalker83
6 Replies

10. Shell Programming and Scripting

Perl: Run perl script in the current process

I have a question regarding running perl in the current process. I shall demonstrate with an example. Look at this. sh-2.05b$ pwd /tmp sh-2.05b$ cat test.sh #! /bin/sh cd /etc sh-2.05b$ ./test.sh sh-2.05b$ pwd /tmp sh-2.05b$ . ./test.sh sh-2.05b$ pwd /etc sh-2.05b$ So... (10 Replies)
Discussion started by: vino
10 Replies

Featured Tech Videos