首页 > 系统相关 >linux用户添加、删除、添加附属组、移出附属组

linux用户添加、删除、添加附属组、移出附属组

时间:2022-09-02 09:37:23浏览次数:61  
标签:function name echo 附属 print 添加 linux usage root

 1 #!/bin/bash
 2 
 3 function print_usage()
 4 {
 5     echo "./userM.sh -A <username>  添加用户" 
 6     echo "./userM.sh -MG <username> 添加到root组"
 7     echo "./userM.sh -DG <username> 从root组移除"
 8     echo "./userM.sh -l <username>  列出用户所在组"
 9     echo "./userM.sh -lall          列出所有用户名"
10 }
11 
12 
13 function u_add()
14 {
15     u_name=${1}
16     u_pass=${2}
17     useradd ${u_name}
18     echo ${u_pass} | passwd --stdin ${u_name}
19 }
20 
21 function u_add_to_groupRoot()
22 {
23     if [ "" == "$1" ] ; then
24         print_usage
25         return
26     fi
27 
28     u_name=${1}
29     #把用户加入root组
30     # usermod -G root ${u_name}
31     gpasswd -a ${u_name} root
32 }
33 
34 function u_del_from_groupRoot()
35 {
36     if [ "" == "$1" ] ; then
37         print_usage
38         return
39     fi
40     u_name=${1}
41     #把用户从root组删除
42     gpasswd -d ${u_name} root
43 }
44 
45 function u_groups()
46 {
47     if [ "" == "$1" ] ; then
48         print_usage
49         return
50     fi
51     u_name=${1}
52     groups ${u_name}
53 }
54 
55 function u_list_alluser()
56 {
57         # 删除bin行tcpdump之间的所有行
58     #compgen -u | sed '/^bin$/,/^tcpdump$/d'
59     compgen -u | sed '/^bin$/,/^shareadmin$/d'
60 }
61 
62 opttype=$1
63 username=$2
64 
65 
66 case ${opttype} in
67     -A) # 添加用户
68     u_add ${username} root@1234
69         ;;
70     -MG) # 修改组
71         u_add_to_groupRoot ${username}
72         ;;
73     -DG) # 修改组
74         u_del_from_groupRoot ${username}
75         ;;
76     -l)
77         u_groups ${username}
78         ;;
79     -lall)
80     u_list_alluser
81         ;;
82     *)
83         print_usage
84         ;;
85 esac

 

标签:function,name,echo,附属,print,添加,linux,usage,root
From: https://www.cnblogs.com/LiuYanYGZ/p/16648661.html

相关文章

  • linux中$符号讲解
    命令替换在bash中,$()与(反引号)都是用来作命令替换的。命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行。......
  • Linux 添加环境变量
     linux怎么添加环境变量2022-06-2210:59:55一、需要明白以下2点:一般只用第三步即可1、Linux的环境变量是保存在变量PATH中,可通过Linuxshell命令echo$PATH查......
  • 关于微信支付API证书LINUX安装问题
    什么是ssl证书  SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。SSL证书就是遵守SSL协议,由受信任的数字......
  • Linux下使用rm删除文件,并排除指定文件
    rm是我们在Linux下删除文件经常用到的命令,但是有时候我们目录下有很多个文件想要删除,偏偏却要保留其中1个或几个文件,那怎么办呢?很多新手朋友可能会采取一个一个文件删除的......
  • linux 内核态和用户态
    了解一下用户态和内核态的区别。例如我们的应用程序需要从磁盘读取某个文件的数据,此时并不是直接从磁盘加载到应用内存中,而是:先将数据从「磁盘」复制到「内核Buffer」......
  • 【转载】linux之vmlinux、vmlinuz、System.map和/proc/kallsyms简介
    原文:linux之vmlinux、vmlinuz、System.map和/proc/kallsyms简介_小立爱学习的博客-CSDN博客_vmlinux文章目录前言一、vmlinux与vmlinuz1.1vmlinux1.2vmlinuz1.......
  • 新机器(禁止上网)安装vscode及公钥方式登陆linux
    1.1 新机器(禁止上网)安装vscode注意:以下三个程序版本必须一至。1) vscodeWin10安装程序2) win10插件(ssh客户端)3) linux里vscode-server-linux-x64.tar.gz(ssh服......
  • linux AWK
    $cat1.txt./smp_ao_stafpotl_info.log.2020-07-23-AM:2020-07-2309:36:22,655898582491[WebContainer:1]ERRORcom.group.bussvc.stafpotl.service.AppListTypeS......
  • Linux搭建禅道-操作手册
    1.首先进入禅道官网:https://www.zentao.net/,下载禅道的安装包。注意:查看Linux的版本,下载符合要求的版本的禅道安装包。  此时下载这个64位的,之前尝试使用32位的发......
  • Linux 系统运行级别
    centos6及之前的版本中,系统运行级别通过/etc/inittab文件来进行设置和控制。但在centos7中,查看这个文件内容会发现[root@test_vm~]#cat/etc/inittab#inittabisno......