ログインチェックを実行するためにリモートコンピュータでこのスクリプトを実行しようとしていますが、エラーなしで実行する際にいくつかの問題があります。スクリプトを実行すると、次のエラーが発生します。エラー:
bash: -c: option requires an argument
bash: line 2: [: missing `]'
シェルスクリプト:
#!/bin/bash
ssh [email protected] bash -c '
radtest user password 127.0.0.1 100 testing | grep 'Access-Accept' &> /dev/null
if [ $? == 0]; then
echo "match"
fi
'
エラーの原因は何か知っていますか?注:ここではSSHにパスワードは必要ありません。
答え1
私はこれを考えています:
if [ $? == 0];
しなければならない:
if [ $? == 0 ];
しかし、Muruが言ったように、次のようになります。
#!/bin/bash
ssh [email protected] bash -c '"
if radtest user password 127.0.0.1 100 testing | grep -q "Access-Accept"; then
echo "Match"
fi
"'