【shell正则表达式练习】

    技术2025-08-13  5

    1、显示/etc/rc.d/rc.sysinit文件中以不区分大小的h开头的行; [root@node1 ~]# grep -i ‘^h’ /etc/rc.d/rc.sysinit 2、显示/etc/passwd中以sh结尾的行; [root@node1 ~]# grep “sh$” /etc/passwd

    3、显示/etc/fstab中以#开头,且后面跟一个或多个空白字符,而后又跟了任意非空白字符的行; [root@node1 ~]# egrep “^#[[:space:]]+[^[:space:]]+” /etc/fsta 4、查找/etc/rc.d/rc.local中包含“以to开始并以to结尾”的字串行; egrep -w “(to).*\1” /etc/rc.d/rc.local 5、查找/etc/inittab中含有“以s开头,并以d结尾的单词”模式的行; [root@node1 ~]# grep -w ‘<s[a-z]*d>’ /etc/inittab 6、查找ifconfig命令结果中的1-255之间的整数; ifconfig | egrep -o -w "[1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]" 7、显示/var/log/secure文件中包含“Failed”或“FAILED”的行 [root@node1 ~]# grep ‘Failed|FAILED’ /var/log/secure

    8、在/etc/passwd中取出默认shell为bash [root@node1 ~]# grep “bash” /etc/passwd 9、以长格式列出/etc/目录下以ns开头、.conf结尾的文件信息 [root@node1 ~]# find /etc -name “ns*.conf” | xargs ls -l 10、高亮显示passwd文件中冒号,及其两侧的字符 [root@node1 ~]# grep “.:.” /etc/passwd 11、匹配/etc/services中开头结尾字母一样的单词 [root@node1 ~]# egrep “^([a-z]{1,})>.*\1$” /etc/services

    Processed: 0.014, SQL: 9