in reply to getting the exact string used to call a perl script

I don't think it's possible. But tell us why do you think you need that information. Maybe we can find another solution!?

s$$([},&%#}/&/]+}%&{})*;#$&&s&&$^X.($'^"%]=\&(|?*{%.+=%;.#_}\&"^"-+%*) +.}%:##%}={~=~:.")&e&&s""`$''`"e

Replies are listed 'Best First'.
Re^2: getting the exact string used to call a perl script
by reasonablekeith (Deacon) on Oct 12, 2005 at 15:55 UTC
    It's in the example, in my script my_ssh.pl, I need to run execute ssh, passing the same parameters that were passed to my script in the first place (which is pretending to be ssh).

    As to why I'm doing that. Well, we have a system that executes ssh commands according to a workflow. There is a daemon that runs these ssh commands as child processes. However, they always fail with the following error

    ssh: FATAL: ssh_io_register_fd: fd 0 already registered!
    The ssh commands are fine elsewhere, so I'm writing a script that will pass the commands to another process, which will then execute them. Hoping that they will be okay, as they won't be invoked by the deamon directly.

    (This is a stop gap until we can fix ssh properly.)

    ---
    my name's not Keith, and I'm not reasonable.
      I need to run execute ssh, passing the same parameters that were passed to my script in the first place
      So, what's wrong with:
      exec 'ssh', @ARGV; # Or system
      Perl --((8:>*
        nothing, I'd just never seen it before :P, talk about asking the wrong question.

        Thanks, to everyone++

        ---
        my name's not Keith, and I'm not reasonable.

      Be sure to just include the program name (optionally including the full path) as the first argument of exec/system, no redirection or anything else. Then you'll be doing the exact same as the shell. For example,

      exec('ssh', @ARGV); #or exec('/usr/bin/ssh', @ARGV);