
正则表达式习题整理
1. 在
2. 在
3. 在
4. 在
5. 在
6. 在
7. 显示当前主机的IP地址(排除
8. 在
19. 显示
发布日期:2021-05-08 03:57:27
浏览次数:25
分类:精选文章
本文共 1284 字,大约阅读时间需要 4 分钟。
正则表达式与文本处理实用指南
1. 在/proc/meminfo
文件中显示不区分大小写的以s
开头的行
grep -i "^s" /proc/meminfo
2. 在/etc/passwd
文件中显示以nologin$
结尾的行
grep "nologin$" /etc/passwd
3. 在/etc/inittab
文件中显示以#
开头,后面有空白字符且随后有任意字符的行
egrep "^\ *#\ +[^ ]" /etc/inittab
4. 在/etc/inittab
文件中显示包含一个数字并以同样的数字结尾的行
grep ":[0-9]:" /etc/inittab
5. 在/boot/grub/grub.conf
文件中显示以一个或多个空白字符开头的行
egrep "\ +" /boot/grub/grub.conf
6. 在/etc/inittab
文件中显示以相同数字开头并结尾的行
egrep "(^[0-9]).*\1$" /etc/inittab
7. 显示当前主机的IP地址(排除127.0.0.1
)
ip a | egrep -o "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v "127.0.0.1"
8. 在/etc/sysconfig/network-scripts/ifcfg-eth0
文件中显示IP地址格式的行
egrep "([0-9]{1,3}\.){3}[0-9]{1,3}" /etc/sysconfig/network-scripts/ifcfg-eth0
9. 删除配置文件中用井号注释的行
sed -r -i "/^\ *#/d" a.txt
10. 删除配置文件中用双斜杠注释的行
sed -r -i "/^\ *\/\//d" a.txt
11. 删除无内容的空行
sed -i "/^$/d" a.txt
12. 删除井号注释和无内容空行
sed -r -i "/^\ *#/d;/^$/d" a.txt
13. 追加一行内容,可有可无注释
sed -i "$a\abcdefg" a.txt
14. 给文件每行加注释
sed -i -r "s/^/#/" a.txt
15. 为指定行添加注释
sed -i '3s/^/#/' 3.txt
16. 获取网卡IP(排除IPv6)
ip a | egrep -o "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v "127.0.0.1"
17. 获取内存使用百分比
free -m | awk '{if(/Mem/){total=$2; free=$4}}END{print free/total*100}'
18. 获取磁盘使用情况
df -h | egrep "\/$" | awk "{print $(NF-1)}"
19. 显示/etc/hosts
文件的最后一个字段
awk '{print $NF}' /etc/hosts
20. 显示指定目录下的目录名
ll | awk '{print $NF}'