[PERL] Running unix commands within Perl Scripts


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting [PERL] Running unix commands within Perl Scripts
# 1  
Old 05-28-2008
[PERL] Running unix commands within Perl Scripts

I understand that in order to run basic unix commands I would normally type at the prompt, I would have to use the following format
Code:
system(ls -l);
or
exec(ls -l);

But when I actually try to use the command, the script fails to compile and keeps telling me there is an error with this line. How exactly do I run commands in perl? I have the proper shebang that points to the perl exec. Thanks.
# 2  
Old 05-28-2008
system calls

To learn more about the perl system function, at your command line type
perldoc -f system

(to learn more about using perldoc, type 'man perldoc' at the command prompt).

Your problem is that system() is expecting a LIST of things you want done. You are providing it with two items which aren't even separated by a comma, so Perl is going crazy trying to figure out what you want.

Try system("ls -l") to provide system() with just one thing you want it to do. Same with exec. Be sure to perldoc -f exec to discover the differences between these two commands.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl script running multiple commands at once

Hi All, I have put a perl script together to go and collect some information from multiple nodes/endpoints. The script works absolutly fine however I want to make it quicker. You will see in the below that my script calls an expect script called ssh_run_cmd2.exp followed by the IP of... (7 Replies)
Discussion started by: mutley2202
7 Replies

2. Shell Programming and Scripting

Execution problem unix commands in Perl CGI

I am trying to run SSH , mkdir and other unix commands using Perl CGI. But i am not able to Execute these commands. Please help me out !!!! SSH and mkdir is necessity for me. I will be thankful to you...!!!!! I am trying like: In perl CGI file i am writing like: @list = `ssh... (28 Replies)
Discussion started by: Navrattan Bansa
28 Replies

3. Shell Programming and Scripting

perl/unix: script in command line works but not in perl

so in unix this command works works and shows me a list of directories find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt but when i try running a perl script to run this command my $query = 'find . -name \*.xls -exec dirname {} \; | sort -u | > list.txt';... (2 Replies)
Discussion started by: kpddong
2 Replies

4. Shell Programming and Scripting

Running unix commands in a perl script

Executing two unix commads via perl script one after another e.g: make clean bsub -i -q short make have tried using exec but the second command doesnt executes (1 Reply)
Discussion started by: rajroshan
1 Replies

5. Shell Programming and Scripting

Running many PERL scripts in one file

Hi, I have many PERL scripts in my system(Solaris 10 UNIX OS).I want to define all scripts in one file and run.Please suggest how to define. (3 Replies)
Discussion started by: sudhakaryadav
3 Replies

6. Shell Programming and Scripting

Running unix commands through perl

Hi all, In the directory '/temp/chris' the following files exist: chris.tar, chris.txt What i am trying to do is to assign the 'chris.tar' filename in an argument through perl, in order to do that i use the system command: $file=system("ls /temp/chris/*.tmp), but in the '$file' the exit... (2 Replies)
Discussion started by: chriss_58
2 Replies

7. Shell Programming and Scripting

Running shell scripts automatically without using Batch or at commands

I have been trying to run a unix script which contains many sql statements.I need to run this script every monday morning. I tried to run on command prompt, it works fine. But while I run it via batch or at command., it returns with library module could not be loaded (libcompat.1.o could not be... (3 Replies)
Discussion started by: ritzwan0
3 Replies

8. UNIX for Dummies Questions & Answers

Unix commands in perl script

I am totally new to unix commands but I need to understand the following command which is a part of a perl script..what does this mean? myPwd = $(pwd) myTracker = $myPwd/myTracker.out exec > $myTracker 2>&1 (1 Reply)
Discussion started by: athri
1 Replies

9. Shell Programming and Scripting

Perl calling unix system commands

if ( system ("/bin/cat $File1 >> $File2") ) { print("#WARNING RAISED : /bin/cat File1 >> File2 - FAILURE!\n"); } I came across this code, would appreciate if someone can tell me if my understanding is correct? the perl code tell the system to cat file 1 into file 2, if command fails, print... (4 Replies)
Discussion started by: new2ss
4 Replies

10. Shell Programming and Scripting

Replace Perl Module name in all Perl scripts

I want to replace a Perl module name in all my Perl Scripts in the cgi-bin directory. How is it possible? I have the following statement in my scripts use myUtil; I want to change it to use myUtil777; Regards, Rahul (2 Replies)
Discussion started by: rahulrathod
2 Replies
Login or Register to Ask a Question