1、显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录

需要使用到通配符
两条命令实现是一样的效果
ll -a /etc/[^[:alpha:]][[:alpha:]]
ll -a /etc/[^[:alpha:]][a-zA-Z]

47期第三周作业_第1张图片

2、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中

mkdir -pv /tmp/mytest1
以下三条命令均可以实现(将下列-av可改为R/r递归也可以)
cp -av /etc/p[^0-9] /tmp/mytest1/
cp -av /etc/p
[!0-9] /tmp/mytest1/
cp -av /etc/p*[^[:digit:]] /tmp/mytest1/
ls -l /tmp/mytest1 查看复制的数据量
47期第三周作业_第2张图片

3、将/etc/issue文件中的内容转换为大写后保存到/tmp/issue.out文件中

需要使用到tr命令、通配符
以下两条命令都可实现
cat /etc/issue |tr '[a-z]' '[A-Z]' > /tmp/issue.out
cat /etc/issue |tr '[[:lower:]]' '[[:upper:]]' > /tmp/issue.out
47期第三周作业

4、总结描述用户和组管理类命令的使用方法

用户和组的配置文件
◆Linux用户和组的主要配置文件:
/etc/passwd :用户及其属性信息(名称、UID、 主组ID等)
/etc/group :组及其属性信息
/etc/shadow :用户密码及其相关属性
/etc/gshadow :组密码及其相关属性

useradd用法
-u UID
-o 配合-u选项,不检查UID的唯一~性 例:useradd -u 0 -o admins
-g GID 指明用户所属基本组,可为组名,也可以GID
-C "COMMENT 用户的注释信息
-d HOME DIR 以指定的路径(不存在)为家目录
-s SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中
-G GROUP1[,GROUP2.]为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users組做主
-r 创建系统用户CentOS 6: ID<500,CentOS 7: ID< 1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户
用户属性修改usermod
◆usermod [OPTION] login
-U UID:新UID
-g GID:新主组
-G GROUP1[,GROUP2...[,GROUPN]] :新附加组,原来的附加组将会被
覆盖;若保留原有,则要同时使用-a选项
-S SHELL :新的默认SHELL
-C 'COMMENT' :新的注释信息
-d HOME:新家目录不会自动创建;若要创建新家目录并移动原家数据
同时使用-m选项
-| login
name: 新的名字
-L: lock指定用户锁定,在/etc/shadow密码栏的增加!
-U: unlock指定用户,将/etc/shadow密码栏的!拿掉
-e YYYY-MM-DD:指明用户账号过期日期
-f INACTIVE:设定非活动期限
实例
usermod -e 2020-10-10 mage 设置账户的过期时间
用户删除userdel
userdel -r mysql 删除该组
创建组groupadd
◆groupadd [OPTION].. group name
-g GID 指明GID号; [GID
MIN, GID MAX]
-r 创建系统组
CentOS 6: ID<500
CentOS 7: ID<1000
组属性修改: groupmod
groupmod [OPTION... group
-n group
name:新名字
-g GID:新的GID
◆组删除: groupdel
groupdel GROUP
组密码: gpasswd
gpasswd [OPTON] GROUP
-a user将user添加至指定组中
-d user从指定组中移除用户user
-A user1,user2...设置有管理权限的用户列表
newgrp命令: 临时切换主组
如果用户本不属于此组,则需要组密码

gpasswd -d admin groups 从groups组移出admin
newgrp groups 临时切换到该组,需输入密码

更改组和查看组成员(附加)
◆groupmems [options] [action]
options :
-g, --group groupname更改为指定组 (只有root)
actions:
-a, --add username 指定用户加入组
-d, --delete username从组中删除用户
-P, --purge 从组中清除所有成员
-|, --list
显示组成员列表
◆groups [OPTION].[USERNAME]..查看用户所属组列表

newusers passwd格式文件 批量创建用户
chpasswd 批量修改用户口令

案例
(1)创建组distro,其GID为2019;
groupadd -g 2019 distro
查看组:
[root@test ~]# getent group distro
distro:x:2019:
(2)创建用户mandriva,其ID号为1005;基本组为distro
useradd -u 1005 mandriva -g distro
[root@test ~]# getent passwd mandriva
mandriva:x:1005:2019::/home/mandriva:/bin/bash
(3)创建用户mageia,其ID号为1100,加目录为/home/linux;
useradd -u 1100 mageia -d /home/linux
[root@test ~]# getent passwd mageia
mageia:x:1100:1100::/home/linux:/bin/bash
(4)给用户mageia添加密码,密码为mageedu,并设置用户密码7天后过期;
passwd mageia
更改用户 mageia 的密码 。
新的 密码:
设置mageid密码最短有效时间 为7
passwd -n 7 mageia 或者 chage -m 7 mageia #最小天数为7天
47期第三周作业
(5)删除mandriva,保留家目录;
不加-r,会自动保留其家目录
userdel mandriva
(6)创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
groupadd peguin
useradd -g distro -G peguin -u 2002 slackware
[root@test ~]# id slackware
uid=2002(slackware) gid=2019(distro) 组=2019(distro),2023(peguin)
(7)修改slackware的默认shell为/bin/tcsh;
usermod -s /bin/tcsh slackware
或者直接去配置文件修改并保存:
vim /etc/passwd
slackware:x:2002:2019::/home/slackware:/bin/tcsh

(8)为用户slackware新增附加组admins
usermod -a -G admins slackware
id slackware
uid=2002(slackware) gid=2019(distro) 组=2019(distro),2023(peguin),2024(admins