Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Is it possible to execute (from windows) a local script with arguments on a remote linux system?

Here's what I got:

plink 1.2.3.4 -l root -pw mypassword -m hello.sh

Is there a way to do this same thing, but able to give input parameters to hello.sh?

I've tried many things, including:

plink 1.2.3.4 -l root -pw mypassword -m hello.sh input1 input2

In this case it seems that plink thinks that input1 and input2 are its arguments.. which makes sense.

What are my options?

share|improve this question

1 Answer 1

plink does not run the script as a sh script; it just sends its contents as separate commands, so there is nothing you could pass arguments to.

You could get around this by telling the shell to interpret its stdin as if it was a file:

plink -T ... $SHELL /dev/stdin arg1 arg2 arg3 < hello.sh
share|improve this answer
    
Does not work for me. Am I supposed to replace '$SHELL' with something? is arg1 supposed to be the name of the file? I've tried all kinds of combinations, nothing seems to work. My hello.sh looks like this: '#!/bin/bash echo "Your argument is "$1'. –  c_maker Nov 17 '11 at 0:01
    
@c_maker: Try the updated version; and no, $SHELL will be automatically expanded on the server, and arg1 is the first argument you want to give. –  grawity Nov 17 '11 at 0:58

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.