我试图创建一个提示输入用户名的Linux bash脚本。例如,它要求输入用户名,一旦输入用户名,它将检查用户是否存在。我已经尝试过,但我不确定自己是否做得对。 我将不胜感激您的帮助。如何在Linux中创建一个bash脚本来检查用户是否是本地的
这是我如何做的:
#!/bin/bash
echo "Enter your username:"
read username
if [ $(getent passwd $username) ] ; then
echo "The user $username is a local user."
else
echo "The user $username is not a local user."
fi
'getent'会检查网络登录一样,所以这个测试可能不会是你想要的 –
在这一点上,它是所有关于测试,对。如果你使用你的用户ID会发生什么?这是否有效,很好。如果你使用你确定不存在于系统中的东西,可能是'nonesuch'或'ThereIsNoWayThisIsAUserName'或??您也可以考虑查看'/ etc/passwd'来确认用户是否是“本地”,但这可能会因您的计算环境的责任而有所不同。 (学校,公司等,'passwd'文件可能不可信)。祝你好运。 – shellter
我正在投票关闭这个问题作为题外话,因为堆栈溢出是为了找到编码问题的解决方案。有关改进工作代码的建议,请改为使用[codereview.se]。 –