我正在嘗試編寫一個腳本來檢查用戶(即作爲參數發送)是否已登錄。我想要回答0,如果用戶登錄,返回0;如果用戶沒有登錄,則返回1。Bash腳本 - 檢查用戶是否已登錄
但我遇到了一些問題。每當我嘗試運行腳本時,即使發送用戶作爲參數,我也會收到消息「您需要輸入用戶」。
#!/bin/bash
function checkUser
{
status=0
for u in $(who | awk '{print $1}' | sort | uniq)
do
if [ "$u" = "$1" ]; then
status=1
fi
done
if [ "$status" = "1" ]; then
echo "$user is logged in."
exit 0
else
echo "$user is not logged in."
exit 1
fi
}
if [[ $1 -eq 0 ]] ; then
echo 'You need to enter a user'
read u
else
user=$1
fi
用一個簡單的谷歌搜索,你可以準確地找到你的運動有幾種方法做到這一點:https://ubuntuforums.org/showthread.php?t=2075873 –
我沒有看到任何解決方案,只有問題。 – LinuxN00b