微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Bash脚本添加和删除用户

如何解决Bash脚本添加和删除用户

我是bash脚本的初学者,我创建了一个bash脚本来在Linux上添加用户删除用户。 但是由于我遇到了一些脚本问题,这些问题并不是真正的主要问题,但是如果有人可以指出我如何改进脚本,这会有所帮助,而我正在做的最糟糕的做法会有所帮助

但是我注意到的问题是,脚本使用-a来添加用户-d来删除用户,并且-h来获取帮助-a标志作为2个可选参数-p表示密码,-s表示shell,因此命令应该是

./useradd.sh -a user -p password -s shell

这可以按预期工作,并且用户添加到系统中,但我面临的问题是,如果我不输入-a标志并指定-s和-p标志,则脚本刚刚退出,我想显示一个用户明确说明为什么退出,并且我假设有这么多此类错误,但是我没有对它进行过测试,因此不胜感激,因此这里是我的脚本

https://github.com/abhijith7025/bash_scripts/blob/master/useradd.sh

解决方法

...我创建了一个bash脚本来在Linux上添加用户和删除用户。

您可能要重新考虑这一点,因为Linux对于这两个操作具有单独命令。 创建用户要比摆脱一个用户要多得多,因此您可能会在尝试将两者结合在一起时遇到麻烦。

无论如何:

您的案例声明没有“其他”分支(“ * ”)。 这就是为什么“滥用”脚本时不会出现错误的原因。

case $opt in 
  a )  
    ;; 
  d )  
    ;; 
  h )  
    ;; 
  * )
     usage 
     exit 1 
     ;; 
esac 

要注意的其他事项:

对于可能会删除用户的脚本,

user 添加可能是一个不好的名字。

您允许将shell指定为参数,但不检查是否存在

Linux命令通常在“事物”或“事物”列表上进行操作,并且使该操作由[通常]在事物之前的选项限定。因此,最好像这样调用脚本:

./manage_user  -a  -p password  -s shell_exe  user1 
                |   |            |            |
                |   |            |            User name 
                |   |            Shell for User
                |   Password for User
                Add a User

./manage_user  -d  user2 
                |  |
                |  User name 
                Delete a User

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。