我以root用户身份登录,而不是运行具有以下内容的脚本
#! /bin/bash
id studentapp if [ $? -eq 0 ];
then echo " SKIPPING user creation"
else useradd studentapp
echo " User created"
fi
cd /home/studentapp
任何想法...
最佳答案
如果创建了用户,也许在else块中需要su studentapp
。 cd
更改工作目录。如果未创建用户-可能没有这样的目录。
su man page
cd man page
另外,它可能对您有帮助:
check if user exists
check if direcory exists
更新资料
#! /bin/bash
id studentapp
if [ $? -eq 0 ];
then
echo "user exists"
else
useradd studentapp --create-home
passwd studentapp
echo "user created"
fi
su studentapp
cd /home/studentapp
关于linux - 脚本不会自动从root用户切换到普通用户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52803970/