我尝试在远程计算机上运行此脚本,以执行登录检查,但在执行时遇到一些问题且没有错误。运行脚本时出现以下错误: 错误:
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 ];
但正如穆鲁所说,它可以是:
#!/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
"'