shell脚本工作但删除错误“line [8]期望参数[”

时间:2016-04-19 20:35:10

标签: shell sh

我有shell脚本可以工作(做我想做的事情,查找列出的用户是否在线),但每次丢弃错误“line [8]期望参数[”。我尝试过使用==但同样的事情。这是我的代码:

#!/bin/sh
truth=0;
until [ $truth -eq 1 ]
do

    for i; do
    isthere=$(who is here | awk '{print $1}' | grep $i)
    if [ $isthere = $i ] #(8 line is here)
        then
        echo "found user: "$isthere". program now will close.";
        exit 0;
    fi
    done
echo "user not found, retrying after 3sec...";
sleep 3;
done

感谢您的帮助和时间。

1 个答案:

答案 0 :(得分:1)

看起来$isthere$i为空。你应该引用它们:if [ "$isthere" = "$i" ]

在其他新闻中:大多数分号都没用;分号不是语句终结符,而是语句分隔符,以及换行符。