我找到了以下我想运行的 bash 脚本,但我并不完全确定它会做什么。有人能解释一下以下 bash 脚本的工作原理吗?即它在做什么以及如何做到的?
echo - "Who are you looking for: "
read user
if [ -n "$user" ]
then
list=`w | grep $user | cut -c19-30`
if [ "$list" != "" ]
then
echo "The user $user is logged in from $list"
else
echo "The user $user is not logged in now"
fi
fi
答案1
此脚本允许您输入要查找的用户。它将告诉您该用户是否已登录,如果已登录,则告诉您从哪个位置登录。
read user
这将读取你输入的用户名
`w | grep $user | cut -c19-30`
第一部分,w
,打印出访问此计算机的所有登录用户。grep $user
过滤掉不包含您输入的用户名的行。 最后, 分割cut -c19-30
输出以获取从位置 19 到位置 30(这是位置部分所在的位置)的字符。
最后一个条件块只是检查前一个命令是否有输出。如果没有,则表示用户未登录。如果有,则表示用户已登录并打印出位置。