1

理由はどうあれ、さまざまなアドレスにコマンドを送信できるスクリプトを作成しようとしています。ユーザー用の共有キーがあるため、ログインする必要はありません。しかし、これは機能していません。

そのため、次は機能しません...

#!/bin/bash
ip=$1
shift
args="'$@'"
cmd="ssh user@$ip -C $args"
output=$($cmd)

次のように実行すると:

./myscript.sh 10.0.1.2 /bin/ls -l /var

「ls -l /var: No such file or directory」というエラーが表示されます

そのコマンド (ssh user@10.0.1.2 -C '/bin/ls -l /var') を実行すると、正常に動作します。

私は何を間違っていますか?これらは RHEL6 の同じインストールです。

4

1 に答える 1

0

どうやら、引用符はbashを混乱させていました。以下の作品...

ip=$1
shift
$(ssh -o ConnectTimeout=1 User@$ip "$@")
于 2015-03-17T20:11:50.693 に答える