sed|centos7之文件搜索及sed文本处理

1、查找/etc目录下大于1M且类型为普通文件的所有文件
[root@centos7 ~]# find /etc/ -type f -size +1M |xargs ls -lh
-rw-r--r--. 1 root root 1.4M Apr 112018 /etc/brltty/zh-tw.ctb
-rw-------. 1 root root 3.8M Nov32018 /etc/selinux/targeted/active/policy.kern
-rw-r--r--. 1 root root 1.4M Nov32018 /etc/selinux/targeted/contexts/files/file_contexts.bin
-rw-r--r--. 1 root root 3.8M Nov32018 /etc/selinux/targeted/policy/policy.31
-r--r--r--. 1 root root 7.8M Jan4 15:58 /etc/udev/hwdb.bin
[root@centos7 ~]#
2、打包/etc/目录下面所有conf结尾的文件,压缩包名称为当天的时间,并拷贝到/usr/localsrc目录备份。
[root@centos7 ~]# tar -zvcf `date +%F`.tar.gz /etc/*.conf && cp `date +%F`.tar.gz /usr/local/src/
tar: Removing leading `/' from member names
/etc/asound.conf
/etc/autofs.conf
/etc/autofs_ldap_auth.conf
/etc/brltty.conf
3、利用sed 取出ifconfig命令中本机的IPv4地址
[root@centos7 ~]# ifconfig ens160 |sed -nr '2s/^[^0-9]+([0-9.]+).*/\1/p'
10.0.1.109
[root@centos7 ~]#
4、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符
[root@centos7 ~]# sed -r 's/^# +(.*)/\1/' /etc/fstab

#
/etc/fstab
Created by anaconda on Sat Jan4 01:52:46 2020
#
Accessible filesystems, by reference, are maintained under '/dev/disk'
See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /xfsdefaults0 0
UUID=24b6bae0-d077-4259-8529-f778c9c120ce /bootxfsdefaults0 0
/dev/mapper/centos-swap swapswapdefaults0 0
5、处理/etc/fstab路径,使用sed命令取出其目录名和基名
[root@centos7 ~]# echo /etc/fstab |sed -nr 's@(/.*)/(.*)@\1@p'
/etc
[root@centos7 ~]# echo /etc/fstab |sed -nr 's@(/.*)/(.*)@\2@p'
fstab
【sed|centos7之文件搜索及sed文本处理】[root@centos7 ~]#


    推荐阅读