2012-03-16 11 views
2

AWSインスタンスにアップロードしたスクリプトを実行しようとしています。私は私のMacBookのターミナルで次のコマンドを実行した場合、それは成功しますSSHはTerminalでもシェルスクリプトでも動作します

ssh -o StrictHostKeyChecking=no -i ~/.ec2/my.pem [email protected]<address>.amazonaws.com "chmod u+x ./myScript.sh" 

私は情報を渡す私のローカルマシン上で簡単なシェルスクリプトに同じコマンドを移植:

#!/bin/sh 
# myLocalScript.sh 

host=$1 
pem=$2 
fileName=$3 

ssh -o StrictHostKeyChecking=no -i $pemkey [email protected]$host "chmod u+x ./$fileName" 

私は、このコマンドを使用して、それを実行すると:

sh myLocalScript.sh [email protected]<address>.amazonaws.com ~/.ec2/my.pem myScript.sh 

を私は次のエラーを取得する:

Warning: Identity file [email protected]<address>.amazonaws.com not accessible: No such file or directory. 
ssh: Could not resolve hostname chmod u+x ./myScript.sh: nodename nor servname provided, or not known 

私は間違っていますか?

+1

+1この質問については、あなたは背景、あなたのスクリプトとエラーを含んでいました。 – ghoti

答えて

5

$pem$pemkeyである必要があります。

さらに、空の変数を「消える」ような非常に特殊な状況を除いて、二重引用符で囲まれた変数の習慣に入るべきです。

+0

LOL。ありがとうございました :) – TERACytE

関連する問題