shell正则表达式练习题

本文详细介绍了15个Linux命令行技巧,涉及用户信息、shell脚本、网络状态、磁盘使用率和系统配置,展示了在终端中高效管理Linux系统的方法。
摘要由CSDN通过智能技术生成

1.显示三个用户root、JK的UID和默认shell

grep -E "^(root|JK)" /etc/passwd | cut -d: -f3,7

2.找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行

grep -E "^\w+\(\)" /etc/rc.d/init.d/functions

3.使用grep取出/etc/rc.d/init.d/functions中其基名

echo "/etc/rc.d/init.d/functions/" | grep -Eo "[^/]+\/?$"

 4使用grep取出/etc/rc.d/init.d/functions中的路径名

echo "/etc/rc.d/init.d/functions" | grep -Eo "^/.*/"

 5.统计last命令中以root登录的每个主机IP地址登录次数

 last | grep -E "^root" | grep -Eo "([0-9]{1,3}\.){3}[0-9]{1,3}" | sort | uniq -c | sort -nr

 6.显示ifconfig命令结果中所有IPv4地址

ifconfig | grep -Eo "([0-9]{1,3}\.){3}[0-9]{1,3}"

 7.将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

 echo "welcome to magedu linux" | grep -Eo "[[:alpha:]]" | sort | uniq -c | sort -nr

 8.利用df和grep,取出磁盘各分区利用率,并从大到小排序

 df | grep -Eo "[0-9]{1,3}%" | cut -d% -f1 | sort -nr

 9.找出/etc/passwd用户 名和shell同名的行

 grep -E "^([[:alnum:]]+\>).*\1$" /etc/passwd

10.显示CentOS7上所有UID小于1000以内的用户名和UID

 grep -E ":[0-9]{1,3}:[0-9]+" /etc/passwd | cut -d: -f1,3

11.找出“netstat -tan”命令结果中以LISTEN后跟任意多个空白字符结尾的行

netstat -tan | grep -Ei "listen[[:space:]]*" | cat -A

 12.找出/etc/passwd中的两位或三位数

grep -Eo "\<[0-9]{2,3}\>" /etc/passwd

13.显示用户rpc默认的shell程序

 grep -E "^JK" /etc/passwd | cut -d: -f7

14.显示/etc/passwd文件中不以/bin/bash结尾的行

 grep -Ev "/bin/bash$" /etc/passwd

15.显示/proc/meminfo文件中以大小s开头的行(要求:使用两种方法)

 cat /proc/meminfo | grep -i "^s"
 cat /proc/meminfo | grep "^[sS]"

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值