grep命令
1)、显示/proc/meminfo 文件中以大小s 开头的行
grep -i '^s' /proc/meminfo
(2)、显示/etc/passwd 文件中不以/bin/bash 结尾的行
grep -v '/bin/bash$' /etc/passwd
(3)、显示/etc/passwd 文件中ID 号最大的用户的用户名及其shell
cat /etc/passwd | sort -nr -t':' -k3 | head -1 | cut -d':' -f'1,7'
(4)、找出/etc/passwd 中的两位或三位数或四位数
grep '\<[0-9]\{2,4\}\>' /etc/passwd
(5)、显示/etc/grub2.cfg 文件中,至少以一个空白字符开头的且后面存非空白字符的行
grep '^[]\+[^ ]' /etc/grub2.cfg
(6)、找出/etc/passwd 文件中用户名和shell名一致的行 例如下面这些数据就是用户名和shell名一致,即开头和结尾字符一致
egrep '^(.*):.*\1$' /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
(7)、使用正则命令取出本机的IPv4 地址 sys
ip a |grep 'inet' |grep -v 'inet6' |tail -1 |cut -d ' ' - f6 |cut -d '/' -f 1
192.168.202.139
(8).显示grep出/etc/passwd 文件中所有含有root的行
grep root /etc/passwd
(9)输出/etc/passwd 文件中任何包含bash的所有行,还要输出
紧接着这行的上下各两行的内容
grep -C bash /etc/passwd
(10)显示/etc/passwd 文件中出有多少行含有nologin。
grep 'nologin' /etc/passwd | wc -l
(11)显示出/etc/passwd 文件中那些行含有root,并将行号一块输出。
grep -n 'root' /etc/passwd
(12)新建建四个用户 Alex213sb Wpq2222b yH438PIG egon666 egon 过滤出/etc/passwd 文件中用户名组成是字母+数字+字母的行
grep "^[a-Z]\+[0-9]\+[a-Z]\+" /etc/passwd
(13)过滤掉/etc/ssh/sshd_config内所有注释和所有空行
cat /etc/ssh/sshd_config | grep -Ev '^#|^$'
find命令
1.查找/etc/目录下,所有.conf后缀的文件
find /etc/ -type f -name '*.conf'
2.查找/var目录下属主为root,且属组为mail的所有文件
find /var/ -user root -group mail
3.查找/var目录下7天以前,同时属主不为root,也不是postfix的文件(如果没有这样的文件,可以将查找时间缩短)
find /var/ -mtime +7 -not -user root -a -not -user postfix
4.查找/etc目录下大于1M且类型为普通文件的所有文件
find /etc/ -type f -size +1M
5.查找/目录下最后创建时间是3天前,后缀是*.log的文件
find . -type f -mtime +3 -name '*.log'
7.查找/tmp目录下5天以前的文件删除(如果没有这样的文件,可以将查找时间缩短)
find /tmp/ -type f -mtime +5 -exec rm {} \;
8.查找/var/log下大于100kb且以log结尾的所有文件
find /var/log -type f -size +100k -name '*.log'
9.同时查找根目录下名为1.txt,2.txt的文件和名字带a的目录(需要自己构造这些文件和目录)
[root@localhost abc]
./qavjj
./1.txt
./2.txt
10.查找/tmp目录下所有文件并删除
find /tmp/ -type f -exec rm {} \;
|