1、显示/etc目录下的指定文件及目录,要求:这些文件及目录的名称以非字母开头,后面跟了一个字母,再其后跟了任意长度的任意字符
ls /etc |grep -E "^[^a-zA-Z][a-zA-Z].*" |xargs ls -ld
2、复制/etc目录下,所有以p开头,以非数字结尾的文件及目录到/tmp/mytest1目录中
ls /etc/ |grep "^p.*[^[:digit:]]$" |xargs -i cp -r {} /tmp/mytest1
3、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中
cat /etc/issue | sed "s@[a-zA-Z]@\U&@g" >> /tmp/issue.out
4、请总结描述用户及组管理常见命令,并完成练习
groupadd 组创建命令
groupadd [OPTIONS] <group_name>
#---------------------------------------------------------------------------------------------------------------------------
groupadd -g <gid> <group_name> #手动指定组ID
groupadd -r <group_name> #创建系统组
groupadd -n <new_name> <group_name> #修改组名
useradd 用户创建命令
useradd [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
useradd -u <uid> <user_name> #手动指定用户ID
useradd -g <gid> <user_name> #手动指定用户的基本组ID,且组必须存在
useradd -G <gid1,gid2,gid3> <user_name> #手动指定用户的附加组,且组必须存在
useradd -r <user_name> #创建系统用户
useradd -d <home_dir> <user_name> #指定用户家目录
useradd -s <default_shell> <user_name> #指定用户默认shell
useradd -M <user_name> #不创建用户主目录
useradd -N <user_name> #不创建用户同名组
useradd -f <数字> <user_name> #密码过期后,用户被禁用前的天数,0表示立即禁用,-1表示永不禁用
useradd -D #显示useradd命令创建用户时的默认配置
useradd -D [OPTION] ... #修改useradd命令创建用户时的默认配置,原配置文件>>/etc/default/useradd
usermod 用户修改命令
usermod [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
usermod -l <new_name> <user_name> #修改用户名
usermod -u <new_id> <user_name> #修改用户ID
usermod -g <another_group_id> <user_name> #修改用户基本组,且组必须存在
usermod -G <another_group_id1,gid2,gid3> <user_name> #修改用户附加组,原附加组会被覆盖
usermod -G <another_group_id1,gid2,gid3> -a <user_name> #修改用户附加组,追加形式
usermod -d <new_home_dir> <user_name> #修改用户家目录,原有文件不会被一同转移
usermod -d <new_home_dir> -m <user_name> #修改用户家目录,搬家形式
userdel 用户删除命令
userdel [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
userdel -r <user_name> #删除用户时一并删除家目录
passwd 用户密码修改命令
passwd [OPTIONS] <username>
#---------------------------------------------------------------------------------------------------------------------------
passwd #修改当前用户密码
passwd <username> #修改指定用户密码
passwd -l <username> #锁定用户
passwd -u <username> #解锁用户
passwd -e <DATE> <username> #设置过期期限、日期
passwd -i <DAYS> <username> #设置非活动期限
passwd -n <DAYS> <username> #设置密码的最短使用期限
passwd -x <DAYS> <username> #设置密码的最长使用期限
passwd -w <DAYS> <username> #设置警告期限
echo <password> | passwd --stdin <username> #一键设置密码
gpasswd 组密码修改命令
gpasswd [OPTIONS] <group_name>
#---------------------------------------------------------------------------------------------------------------------------
gpasswd -a <username> <group_name> #向组中添加用户
gpasswd -d <username> <group_name> #从组中移除用户
newgrp 临时切换指定的组为基本组
newgrp [OPTIONS] <group_name>
chage 修改密码有效期
chage [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
chage [ -d -e -w -m -M ...] #修改对应用户的各用户密码有效期配置项,对应/etc/shadow中的各项
id 显示用户ID
id [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
id -u <user_name> #显示有效用户id
id -g <user_name> #显示用户的有效基本组id
id -G <user_name> #显示用户的所有有效组id
su 切换用户
su [OPTIONS] <user_name>
#---------------------------------------------------------------------------------------------------------------------------
su - <user_name> #登录式切换,通过读取目标用户的配置文件来进行登录
su <user_name> #非登录式切换,不会读取目标用户的配置文件来进行登录
su -c <COMMAND> #不切换用户,直接以目标用户的身份运行命令
练习 4-1 ~ 4-8
04-01 创建用户distro,其GID为2019
04-02 创建用户mandriva,其ID号为1005,基本组为distro
04-03 创建用户mageia,其ID号为1005,家目录为/home/linux
04-04 给用户mageia添加密码,密码为mageedu,并设置密码7天后过期
04-05 删除mandriva,并保留其家目录
04-06 创建用户slackware,其ID号为2002,基本组为distro,附加组为peguin
04-07 修改slackware的默认shell为/bin/tcsh
04-08 为用户slackware新增附加组admins,并设置不可登录
5、完成权限管理命令相关练习
创建用户user1、user2、user3,创建目录/data/test。
05-01 目录datatest属主、属组为user1
05-02 在目录属主、属组不变的情况下,user2对文件有读写权限
05-03-01 设置所有用户都不可删除a1.sh、a2.sh文件
05-03-02 设置除root及user1以外,所有用户都不可删除a3、a4.png
05-04-01 user3增加附加组user1
05-04-02 设置user1组下的user3用户不能访问test目录
05-05 清除test目录及其下文件的特殊权限表