If this isn't working, it isn't because the parameters aren't being passed to the remote machines by ssh . Is script.ksh located in /home/dir on the machines serB , serC , and serD ; or is your script located in that directory on the local machine only? The pathname to the script you're running has to be valid on the machine on which you're trying to run it. And, of course, using unquoted $1 , $2 , and $3 won't work if any of those variables contain any IFS characters (usually <space>, <tab>, and <newline>) and might not work if they expand to strings that contain characters that are special in pathname pattern matching (such as ? , * , and [ ).