如何在 Linux Shell 脚本中检查组是否存在并添加是否不存在

新手上路,请多包涵

这是我希望我的代码执行的操作的摘要:

 if (group exists)
then

  (add user to group)

else

  (create group)

  (add user to group)

fi

我正在使用 Ubuntu 虚拟机,但我在类似网站上找到的所有结果都不起作用。

原文由 annieapple2000 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
2 个回答

该脚本可以帮助您:

    read -p "enter group name: " group
   if grep -q $group /etc/group
    then
         echo "group exists"
    else
         echo "group does not exist"
    fi

原文由 Rupesh 发布,翻译遵循 CC BY-SA 3.0 许可协议

rups解决方案中的— grep 语句存在一些缺陷:

Eg grepping for a group admin may return true (“group exists”) when there is a group lpadmin .

要么修复 grep

 grep -q -E "^admin:" /etc/group

或使用

if [ $(getent group admin) ]; then
  echo "group exists."
else
  echo "group does not exist."
fi

原文由 andiba 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题