Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

how do i add a switch to executable

by Newguy2Perl (Initiate)
on Jul 03, 2001 at 21:04 UTC ( #93581=perlquestion: print w/replies, xml ) Need Help??

Newguy2Perl has asked for the wisdom of the Perl Monks concerning the following question:

how would i get a .exe or bat file that needed a switch on it to work? say i have deltree.exe and i need it to have the /y switch, what is the easiest way to handle this? thankyou

Replies are listed 'Best First'.
Re: how do i add a switch to executable
by andreychek (Parson) on Jul 03, 2001 at 21:11 UTC
    Well, assuming that you are still looking to use the 'system' function that we talked about yesterday, you would simply do:
    my @args = ("deltree", "/y", 'c:\pathname') system(@args) == 0 or die "system @args failed: $?";
    However, since you did ask about a very similar question yesterday, you really should get into the habit of reading the documentation. Perl comes with a lot of good docs, and they're also available on the web. Looking up the system command in the documentation willl yield all this and more. But of course, if you ever have trouble understanding anything you read, or aren't sure where to look, by all means ask. Good luck!

    Update: With tachyon's suggestion, I changed the quotes in the @arg variable for the pathname from double to single quotes, to keep \p from interpolating into something interesting that we don't really want :-) Thanks, tachyon++

      You probably want to change the double quotes around "c:\pathname" to single quotes 'c:\pathname' to supress interpolation of the \p. You can also call programs using backtics for example:

      $flg = "/?"; $dir =`dir c: $flg`; print $dir;

      You will note that the help flag /? has been interpolated into the backtics so that the command executed is the same as:

      C:\>dir c: /?

      The output is captured into $dir which we then print. As a general rule it is much better (read more secure, more reliable, more portable, perhaps faster) to use inbuilt perl functions than backtics or system.




Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://93581]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2020-12-04 08:59 GMT
Find Nodes?
    Voting Booth?
    How often do you use taint mode?

    Results (58 votes). Check out past polls.