我正在学习使用名为Beginning Linux Programming(4th ed)的书从最基本的shell编程。我对这个剧本有疑惑的until
-clause:
#!/bin/bash
until who | grep "$1" > /dev/null
do
sleep 60
done
# Now ring the bell and announce the unexpected user.
echo -e '\a'
echo "***** $1 has just logged in *****"
exit 0
我的疑问是什么who | grep "$1" > /dev/null
用于这里?为什么重定向grep输出到/dev/null
?
@mguilech:谢谢。直到出现命令“who | grep $ 1>/dev/null”的返回代码,才测试条件?我对吗 ? – Tracy 2011-01-08 05:50:19
特蕾西,没错,直到评估整个命令的返回值(重定向到/ dev/null并不重要,直到)。返回值必须为FALSE才能让其处理,一旦成立,直到退出。 – mguillech 2011-01-10 15:02:31