1、显示/proc/meminfo文件中以不区分大小的s开头的行
grep -i "^s" /proc/meminfo i不区分大小写
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 a命令可以显示当前主机的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 -i 修改的文件内容覆盖到原文件
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 单独一个^号表示0个空
16、取得网卡IP(除ipv6以外的所有IP)
ip a | egrep -o "([0-9]{1,3}\.){3}[0-9]{1,3}"
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 -F 不写默认以空格分隔
NR : 当前行
NF : 最后一列
20、打印指定目录下的目录名
ll | awk '{print $NF}' -F 不写默认以空格分隔