我正在创建一个脚本来检测哪个用户有一段时间没有连接到服务器。
到目前为止一切都很好,但现在试图从我的脚本生成的列表中删除一些不需要的条目。我想在我的脚本中添加一个异常,以便在使用未使用的参数调用 lastlog 时,输出不会打印到屏幕上。
我试过类似的东西:
if [ $? -gt 0 ]; then
echo "ERROR!"
fi
但问题是 lastog 在成功时返回 0 但很简单:
lastlog: Unknown user or range: infolog
关于错误。所以我无法捕捉到例外。
这是我的代码(非常简单)
#!/bin/bash
FILES=../*
for year in 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
do
for f in $FILES
do
tempUser=${f:3:20}
userCommand=`lastlog -u $tempUser | grep $year`
if [ ${#userCommand} != 0 ]
then
echo "$userCommand"
fi
done
done