Linux find 、sed命令使用实例

  1. 查找/etc目录下大于1M且类型为普通文件的所有文件
~]# find /etc/ -type f -a -size +1M -exec ls -lh {} \;
-rw-r--r-- 1 root root 8.1M Feb 13  2019 /etc/selinux/targeted/policy/policy.31
-r--r--r-- 1 root root 8.9M Oct 16 18:21 /etc/udev/hwdb.bin
  1. 打包/etc/目录下面所有conf结尾的文件,压缩包名称为当天的时间,并拷贝到/usr/local/src目录备份。
~]# find /etc/ -name '*.conf' | xargs tar -czvPf /usr/local/src/$(date +%F).tar.gz
  1. 利用sed 取出ifconfig命令中本机的IPv4地址
~]# ifconfig ens33 
ens33: flags=4163  mtu 1500
        inet 192.168.240.129  netmask 255.255.255.0  broadcast 192.168.240.255
        inet6 fe80::f0c9:72b7:9c01:6f92  prefixlen 64  scopeid 0x20
        ether 00:0c:29:12:7b:bd  txqueuelen 1000  (Ethernet)
        RX packets 8362  bytes 4323703 (4.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5388  bytes 1025617 (1001.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

~]# ifconfig ens33 |  grep "netmask" 
        inet 192.168.240.129  netmask 255.255.255.0  broadcast 192.168.240.255

~]# ifconfig ens33 |  grep "netmask" | awk '{print $2}'
192.168.240.129
  1. 删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符
~]$ sed 's/^# //' /etc/fstab
  1. 处理/etc/fstab路径,使用sed命令取出其目录名和基名
~]# echo /etc/fstab | sed 's/\/etc\///'
fstab

~]# echo /etc/fstab | sed 's/fstab//'  
/etc/
  1. 查看文件中间一段,你可以使用sed命令,例如截取文件的第100到200行:
~]# sed -n '100,200p' filename 

你可能感兴趣的:(Linux find 、sed命令使用实例)