Find the Best Cosmetic Hospitals

Explore trusted cosmetic hospitals and make a confident choice for your transformation.

“Invest in yourself — your confidence is always worth it.”

Explore Cosmetic Hospitals

Start your journey today — compare options in one place.

Difference between exec and system in perl?

scmuser created the topic: Difference between exec and system in perl?

What are the Difference between exec and system in perl? please explain….

rajeshkumar replied the topic: Re: Difference between exec and system in perl?

exec function in perl

The exec function executes a system command and never returns; use system instead of exec if you want it to return. It fails and returns false only if the command does not exist and it is executed directly instead of via your system’s command shell

Since it’s a common mistake to use exec instead of system, Perl warns you if there is a following statement that isn’t die, warn, or exit (if -w is set–but you always do that, right?). If you really want to follow an exec with some other statement, you can use one of these styles to avoid the warning:
exec (‘foo’) or print STDERR “couldn’t exec foo: $!”;
{ exec (‘foo’) }; print STDERR “couldn’t exec foo: $!”;

Example:
$shell = ‘/bin/csh’;
exec $shell ‘-sh’; # pretend it’s a login shell

or
exec {‘/bin/csh’} ‘-sh’; # pretend it’s a login shell

More..

Executes a system command (directly, not within a shell) and never returns to the calling script, except if the command specified does not exist and has been called directly, instead of indirectly through a shell. The operation works as follows:

* If there is only one scalar argument that contains no shell metacharacters, then the argument is converted into a list and the command is executed directly, without a shell.
* If there is only one scalar argument that contains shell metacharacters, then the argument is executed through the standard shell, usually /bin/sh on Unix.
* If LIST is more than one argument, or an array with more than one value, then the command is executed directly without the use of a shell.

Return Value: 0 only if the command specified cannot be executed

Example

Following are the usage…
exec ‘/bin/echo’, ‘Your arguments are: ‘, @ARGV;
exec “sort $outfile | uniq”;

Another example:
exec {‘/bin/csh’} ‘-sh’; # pretend it’s a login shell

System function in perl

Does exactly the same thing as exec LIST , except that a fork is done first, and the parent process waits for the child process to exit. Note that argument processing varies depending on the number of arguments. If there is more than one argument in LIST, or if LIST is an array with more than one value, starts the program given by the first element of the list with arguments given by the rest of the list.

Executes the command specified by PROGRAM, passing LIST as arguments to the command.The return value is the exit status of the program as returned by the wait function. To obtain the actual exit value, divide by 256.

Return Value : Exit status of program as returned by wait

Example

Try out following example:
#!/usr/bin/perl -w
system(“ls -F /var > /tmp/t.tmp”);

It will produce following result:

A file in /tmp direcory, check it out.

Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn

Find Trusted Cardiac Hospitals

Compare heart hospitals by city and services — all in one place.

Explore Hospitals
I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I have worked at <a href="https://www.cotocus.com/">Cotocus</a>. I share tech blog at <a href="https://www.devopsschool.com/">DevOps School</a>, travel stories at <a href="https://www.holidaylandmark.com/">Holiday Landmark</a>, stock market tips at <a href="https://www.stocksmantra.in/">Stocks Mantra</a>, health and fitness guidance at <a href="https://www.mymedicplus.com/">My Medic Plus</a>, product reviews at <a href="https://www.truereviewnow.com/">TrueReviewNow</a> , and SEO strategies at <a href="https://www.wizbrand.com/">Wizbrand.</a> Do you want to learn <a href="https://www.quantumuting.com/">Quantum Computing</a>? <strong>Please find my social handles as below;</strong> <a href="https://www.rajeshkumar.xyz/">Rajesh Kumar Personal Website</a> <a href="https://www.youtube.com/TheDevOpsSchool">Rajesh Kumar at YOUTUBE</a> <a href="https://www.instagram.com/rajeshkumarin">Rajesh Kumar at INSTAGRAM</a> <a href="https://x.com/RajeshKumarIn">Rajesh Kumar at X</a> <a href="https://www.facebook.com/RajeshKumarLog">Rajesh Kumar at FACEBOOK</a> <a href="https://www.linkedin.com/in/rajeshkumarin/">Rajesh Kumar at LINKEDIN</a> <a href="https://www.wizbrand.com/rajeshkumar">Rajesh Kumar at WIZBRAND</a> <a href="https://www.rajeshkumar.xyz/dailylogs">Rajesh Kumar DailyLogs</a>

Related Posts

What is Perl and use cases of Perl?

What is Perl? Perl is a high-level, general-purpose programming language known for its flexibility, ease of use, and powerful text manipulation capabilities. Originally developed by Larry Wall…

Read More

What is Perl and How it works? An Overview and Its Use Cases

Hey, this is Ashwani, and in this article I’m going to share some important things about Perl. As you see in the heading everything is clear to…

Read More

Introdcution of Perl

What is Perl Perl is a programming language, It’s Object Oriented, simple to learn and very powerful. Perl stand for: “Practical Extraction and Reporting Language”. Perl is…

Read More

Remove Control ^M from files

tpatil created the topic: Remove Control ^M from files Single file method perl -pi -e “s/\r//” filename.txt Multiple File Method find . -type f -exec perl -pi…

Read More

I need to a perl script

rajeshkumar created the topic: i need to a perl script Hi , There is a file called test.txt what are all the different ways BEGIN: test 1…

Read More

The difference between my and local

rajeshkumar created the topic: The difference between my and local There is a subtle difference. In the example below, $::a refers to $a in the ‘global’ namespace….

Read More
Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x