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

[root@localhost ~]# ls -a /etc | grep -Ei "^[^a-z][a-z].*"
1a23.txt
2a
.pwd.lock
.updated


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

ls -a /etc |grep -Ei "^p.*[^0-9]$" > /tmp/cp.txt

vim /tmp/cp.sh

te=`cat /tmp/cp.txt`

cd /etc

for i in $te ; do

  cp -r $i /tmp/mytest1

done

chmod +x /tmp/cp.sh

bash /tmp/cp.sh

或者

cp= `ls -a /etc |grep -Ei "^p.*[^0-9]$"`

cp -r /etc/$cp /tmp/mytest1


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

[root@localhost ~]# cat /etc/issue | tr a-z A-Z >> /tmp/issue.out
[root@localhost ~]# cat /tmp/issue.out
\S
KERNEL \R ON AN \M


4、请总结描述用户和组管理类命令的使用方法并完成以下练习

Useradd  选项   username    添加用户

Userdel   选项  username   删除用户

Usermod   选项   username  修改用户

Id   username  查看用户

Passwd  选项 username   修改密码

Groupadd 选项  groupname  添加组

Groupdel  选项  groupname  删除组

Groupmod  选项  groupname 修改组

Gpasswd 选项 groupname  修改组密码

(1)、创建组distro,其GID为2019;
[root@localhost ~]# groupadd -g 2019 distro


(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
[root@localhost ~]# useradd mandriva -u 1005 -g distro
[root@localhost ~]# id mandriva
uid=1005(mandriva) gid=2019(distro) groups=2019(distro)


(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
[root@localhost ~]# useradd mageia -u 1100 -d /home/linux


(4)、给用户mageia添加密码,密码为mageedu,并设置用户密码7天后过期
[root@localhost ~]# echo mageedu | passwd -x 7 --stdin mageia
Adjusting aging data for user mageia.
passwd: Success


(5)、删除mandriva,但保留其家目录;
[root@localhost ~]# userdel mandriva
[root@localhost ~]# ls /home
dingchao linux mandriva


(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
[root@localhost ~]# groupadd pequin 
[root@localhost ~]# useradd -u 2002 -g distro -G pequin slackware


(7)、修改slackware的默认shell为/bin/tcsh;
[root@localhost ~]# usermod -s /bin/tcsh slackware


(8)、为用户slackware新增附加组admins,并设置不可登陆。
[root@localhost ~]# groupadd admins

[root@localhost ~]# usermod -s /sbin/nologin -G admins slackware


5、创建用户user1、user2、user3。在/data/下创建目录test

[root@localhost ~]# useradd user1

[root@localhost ~]# useradd user2

[root@localhost ~]# useradd user3

Mkdir  /data/test


(1)、目录/data/test属主、属组为user1
[root@localhost ~]# chown user1.user1 /data/test/

[root@localhost ~]# ll -ah /data

total 0

drwxr-xr-x  3 root root  18 Mar 26 13:49 .

dr-xr-xr-x. 20 root root 279 Mar 26 13:49 ..

drwxr-xr-x  2 user1 user1  6 Mar 26 13:49 test


(2)、在目录属主、属组不变的情况下,user2对文件有读写权限
[root@localhost ~]# setfacl -m u:user2:wr /data/test/
[root@localhost ~]# getfacl /data/test/
getfacl: Removing leading '/' from absolute path names
# file: data/test/
# owner: user1
# group: user1
user::rwx
user:user2:rw-
group::r-x
mask::rwx
other::r-x


(3)、user1在/data/test目录下创建文件 a1.sh, a2.sh, a3.sh, a4.sh,设置所有用户都不可删除1.sh,2.sh文件、除了user1及root之外,所有用户都不可删除 a3.sh, a4.sh
[user1@localhost test]$ touch a{1..4}.sh

[root@localhost ~]# chattr +a /data/test/a[1,2].sh

[root@localhost ~]# lsattr /data/test/

-----a---------- /data/test/a1.sh

-----a---------- /data/test/a2.sh

---------------- /data/test/a3.sh

---------------- /data/test/a4.sh

[root@localhost test]# chmod o+t /data/test

[root@localhost test]# ll /data/

total 0

drwxrwxr-t 2 user1 user1 58 Mar 26 14:05 test


(4)、user3增加附加组user1,同时要求user1不能访问/data/test目录及其下所有文件
usermod -G user1 user3

chmod g-x /data/test 

[root@localhost test]# ll /data/

total 0

drwxrw-r-t 2 user1 user1 58 Mar 26 14:05 test


(5)、清理/data/test目录及其下所有文件的acl权限
[root@localhost test]# getfacl /data/test/

getfacl: Removing leading '/' from absolute path names

\# file: data/test/

\# owner: user1

\# group: user1

\# flags: --t

user::rwx

group::rwx

other::r-x

[root@localhost test]# getfacl /data/test/*

getfacl: Removing leading '/' from absolute path names

\# file: data/test/a1.sh

\# owner: user1

\# group: user1

user::rw-

group::rw-

other::r--

 

\# file: data/test/a2.sh

\# owner: user1

\# group: user1

user::rw-

group::rw-

other::r--

 

\# file: data/test/a3.sh

\# owner: user1

\# group: user1

user::rw-

group::rw-

other::r--

 

\# file: data/test/a4.sh

\# owner: user1

\# group: user1

user::rw-

group::rw-

other::r--