in reply to Re^9: Advice on running perl program over ssh
in thread Advice on running perl program over ssh

Ok Thanks very much Salva

I have it working, however I now have a new problem it seems!

I have it working for normal commands such as ls, cd etc. But how do i read stdin to execute a local script as described above?

The following doesn't work:

$ssh->system("tcsh < script1.tcsh") or die "Remote command failed: ".£ +ssh->error;

It appears to be looking for "script1.tcsh" on the remote machine which is not what i want.

Also, how would i get more that one script to run in parallel?

Thanks for your help, it's very much appreciated!

Replies are listed 'Best First'.
Re^11: Advice on running perl program over ssh
by salva (Canon) on Jul 16, 2014 at 14:42 UTC
    $ssh->system({ stdin_file => 'script1.tcsh' }, 'tcsh') or die "Remote command failed: " . $ssh->error;

    Running things in parallel is not so easy. You have the spawn method that returns a PID, then you use perl built-ins as waitpid on the PID to wait for the remote process to finish.