私はジェンキンスから次のコマンドを実行したいと思います:SSHで特殊文字を含むコマンドを渡すには?
ssh -i ~/.ssh/company.pem -o StrictHostKeyChecking=no [email protected]$hostname "supervisorctl start company-$app ; awk -v app=$app '$0 ~ "program:company-"app {p=NR} p && NR==p+6 && /^autostart/ {$0="autostart=true" ; p=0} 1' /etc/supervisord.conf > $$.tmp && sudo mv $$.tmp /etc/supervisord.conf”
これはCloudFormationスタックを作成し、ジョブの最後のステップの1つです。
ターゲットサーバの端末からコマンドを実行すると、正常に動作します。
の上記のように、各サーバー(新しいスタック内のASGのメンバー)にsshを送信し、特定の行を検索して置き換えます。基本的には、特定のサービスを自動起動に設定します。
私は、コマンドを実行すると、私は次のエラーを取得する:
Usage: awk [POSIX or GNU style options] -f progfile [--] file ...
Usage: awk [POSIX or GNU style options] [--] 'program' file ...
私は、私が間違ってやっている任意のアイデアを二重引用符をエスケープしようとしたが、同じエラーを持っていますか?
www.shellcheck.netからのご提案をお試しください – Androbin