私はこのクエリの回答をすでに見つけられていないようで、グーグルで何も見つからないようです。生のモジュールを使用すると重複したパラメータを返す可能性のあるadhocコマンドが見つかりました
私は、リモートマシン上でアドホックコマンドを実行しようとしていますが、「引数文字列に重複パラメータが見つかりました」というエラーが発生しています。これは、シェルモジュールではなくrawモジュールを使用した場合に発生します。ここでの例により、
hostname1 | FAILED => a duplicate parameter was found in the argument string (variable)
hostname2 | FAILED => a duplicate parameter was found in the argument string (variable)
が動作しないコマンドであり、二度同じ変数を設定することに反対しているようだ、これは有効なbashのであるという事実にもかかわらず:
正確なエラーメッセージは以下の通りです:
ansible group -i hosts-file -m raw -k -s -a "variable=1 ; echo \$variable; variable=2; echo \$variable"
私はPythonがインストールされていないと私はどのような方法でそれらを設定することは許されないのですリモートボックスに変数を設定するためのcase文でコマンドを実行しようとしていますので、私が尋ねる理由があります。
例では:
ansible group -i hosts-file -m raw -k -s -a "
for file in \$(find . -name \"test*\")
do
case \$file in
test1) variable=test1 ;;
test2) variable=test2 ;;
test3) variable=test3 ;;
esac
echo \$variable
done
"
ここ構文は、上のスポットされないかもしれないが、うまくいけばあなたのアイデアを得る、それは同じ変数を複数回設定に対処することはできません。上記のコードでは、エコーをcaseステートメントに入れて問題を回避することができますが、現実のコードはエコーよりもはるかに複雑ですので、コードをもっと多く作成することになります。 case文。
誰でもこれを解決する方法を知っていますか?どんな助けでも大変感謝しています。
編集:私は以下の回答のように、バージョン1.7になっています。この問題は、2.0を超えるものには影響しません。
セットアップ時に正常に動作するため、正確なエラーメッセージを入力してください。 –
それは私の愚かだった、私は上記の正確なエラーメッセージを追加しました。 – user6916397