Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re^3: how to use perl variable in system command to run on unix

by Arunbear (Parson)
on Sep 03, 2013 at 16:58 UTC ( #1052145=note: print w/replies, xml ) Need Help??

in reply to Re^2: how to use perl variable in system command to run on unix
in thread how to use perl variable in system command to run on unix

q does not expand variables, for that you need qq e.g.
% perl -E '$x = "hello"; say q($x)' $x % perl -E '$x = "hello"; say qq($x)' hello

Replies are listed 'Best First'.
Re^4: how to use perl variable in system command to run on unix
by tousifp (Novice) on Sep 03, 2013 at 17:28 UTC

    Thank you very much. But why $9 is escaped? Me new to perl !!!

      Because $9 is a variable in Perl, the ninth capture in a regular expression. Since you don't have a regex before, it is an undefined variable in your case, so il will be omitted altogether from your command line. If you escape the $ sign, you say that you want a $ sign, not a variable called $9. Then it is not interpolated and passed to awk correctly.

        Thanks buddy.

      Because in this case you want a literal "$9", you don't want it to be expanded by Perl. An example that you can experiment with:
      % date Wed Sep 4 10:41:55 BST 2013 % date | awk '{ print $2 }' Sep % perl -de0 Loading DB routines from version 1.32 Editor support available. Enter h or `h h' for help, or `man perldebug' for more help. main::(-e:1): 0 DB<1> $cmd = qq[date | awk '{ print $2 }'] DB<2> p $cmd date | awk '{ print }' DB<3> p qx/$cmd/ Wed Sep 4 10:47:41 BST 2013 DB<4> $cmd = qq[date | awk '{ print \$2 }'] DB<5> p $cmd date | awk '{ print $2 }' DB<6> p qx/$cmd/ Sep DB<7> q %
        Thanks. I got it. Will try your code later surely.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1052145]
[Corion]: thezip: Yeah - we have "CAP", but that means "Change Ablauf Plan" (Change Sequence Plan). Likely there is a true ITIL name for this too.
[Corion]: While I'm not really a fan of ITIL, it certainly is better than nothing and it at least provides a common vocabulary, so if you have ITIL somewhere at your disposal, it might be worth a look
[Corion]: Hmm - that should be somewhere in the "Release Deployment Plan", but I don't find a good English link (nor a good German one ;) )
[thezip]: My project manager is asking "Why do we need this?" Ahem...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (7)
As of 2017-02-23 17:57 GMT
Find Nodes?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?

    Results (350 votes). Check out past polls.