1、在/testdir/dir里创建的新文件自动属于webs组,组apps的成员如:tomcat能对这些新文件有读写权限,组dbs的成员如:mysql只能对新文件有读权限,其它用户(不属于webs,apps,dbs)不能访问这个文件夹。
注意:必须先给予用户进入文件夹的权限,然后再设置默认权限。
groupadd webs
groupadd apps
groupadd dbs
useradd -G apps tomcat
useradd -G dbs mysql
chown .webs dir
chmod 2770 dir
setfacl -m g:apps:rx dir
setfacl -m g:dbs:rx dir
setfacl -R -m d:g:apps:rw dir
setfacl -R -m d:g:dbs:r dir
2、备份/testdir/dir里所有文件的ACL权限到/root/acl.txt中,清除/testdir/dir中所有ACL权限,最后还原ACL权限。
getfacl -R dir >acl.txt
setfacl -Rb dir
setfacl --restore ./acl.txt
3、显示/proc/meminfo文件中以大小s开头的行(要求:使用两种方法)
grep -i '^s' meminfo
grep -E '^(s|S)' meminfo
4、显示/etc/passwd文件中不以/bin/bash结尾的行
grep -v '/bin/bash$' passwd
5、显示用户rpc默认的shell程序
grep '^rpc\>' passwd|cut -d':' -f1,7
6、找出/etc/passwd中的两位或三位数
grep -E '\b[0-9]{2,3}\b' passwd
7、显示CentOS7的/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面有非空白字符的行
grep -E '^[[:space:]]+[^[:space:]]' grub2.cfg
8、找出“netstat-tan”命令结果中以LISTEN后跟任意多个空白字符结尾的行
netstat -tan|grep 'LISTEN[[:space:]]*$'
9、显示CentOS7上所有系统用户的用户名和UID
cut -d':' -f1,3 passwd
10、添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户名和shell同名的行
grep -E '^([[:alnum:]]+)\>:.*/\1$' /etc/passwd
grep -P '^(\w+)\b:.*/\1$' /etc/passwd
11、利用df和grep,取出磁盘各分区利用率,并从大到小排序
df|grep '/dev/sd[a-z]'|tr -s ' ' %|cut -d% -f5|sort -nr
12、显示三个用户root、mage、wang的UID和默认shell
grep -E '^(root|zhangsan|lisi)\b' passwd|cut -d':' -f1,3,7
grep -e '^root\>' -e '^zhangsan\>' -e '^lisi\>' /etc/passwd|cut -d':' -f1,3,7
13、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行
grep -E '^([[:alpha:]_]+)\(\)' functions
14、使用egrep取出/etc/rc.d/init.d/functions中其基名
echo "/etc/rc.d/init.d/functions"|grep -Eo '[^/]+$'
15、使用egrep取出上面路径的目录名
echo "/etc/rc.d/init.d/functions"|grep -E '.*/'
16、统计last命令中以root登录的每个主机IP地址登录次数
last|grep '^root\>'|tr -s ' '|cut -d' ' -f3|grep '^[[:digit:]].*$'|sort|uniq -c
17、利用扩展正则表达式分别表示0-9、10-99、100-199、200-249、250-255
ifconfig|grep -E '\b[0-9]{1,2}\b|\b1[0-9][0-9]\b|\b2[0-4][0-9]\b|\b25[0-5]\b'
18、显示ifconfig命令结果中所有IPv4地址
ifconfig|grep -Eo '([[:digit:]]{1,3}\.){3}[[:digit:]]+'
19、将此字符串:welcome to magedulinux中的每个字符去重并排序,重复次数多的排到前面
echo "welcome to magedulinux"|tr -d '[[:blank:]]'|grep -o '.'|sort|uniq -c|sort -nr