文件查找及行编辑工具sed练习

1、查找/etc目录下大于1M且类型为普通文件的所有文件。[root@wjl ~]# find /etc -size +1M -a -type f -print/etc/udev/hwdb.bin/etc/selinux/targeted/policy/policy.29/etc/brltty/zh-tw.ctb注:-size选项后面的值决定了查找条件,即,- #M表示不大于(#-1)M的文件,#M表示(#-1,#] 范围内的文件,+#M表示大于#M的文件2、打包/etc/目录下面所有c
摘要由CSDN通过智能技术生成

1、查找/etc目录下大于1M且类型为普通文件的所有文件。

[root@wjl ~]# find /etc -size +1M -a -type f -print
/etc/udev/hwdb.bin
/etc/selinux/targeted/policy/policy.29
/etc/brltty/zh-tw.ctb

注:-size选项后面的值决定了查找条件,即,- #M表示不大于(#-1)M的文件,#M表示(#-1,#] 范围内的文件,+#M表示大于#M的文件

2、打包/etc/目录下面所有conf结尾的文件,压缩包名称为当天的时间,并拷贝到/usr/local/src目录备份。

[root@wjl ~]# mkdir /usr/local/src/`date "+%Y-%m-%d-%H-%M-%S"`   #反引号表示执行里面的命令本身
2020-07-08-21-22-22
[root@wjl ~]# find /etc -name "*conf" -print -exec cp -aR {} /usr/local/src/2020-07-08-21-22-22 \;
...
/etc/fonts/conf.d/65-0-lohit-bengali.conf
/etc/fonts/conf.d/59-liberation-sans.conf
/etc/fonts/conf.d/65-0-khmeros-base.conf
/etc/fonts/conf.d/59-liberation-mono.conf
/etc/fonts/conf.d/31-cantarell.conf
/etc/fonts/conf.d/67-lohit-malayalam.conf
/etc/fonts/conf.d/10-scale-bitmap-fonts.conf
/etc/fonts/conf.d/65-0-lohit-kannada.conf
/etc/fonts/conf.d/20-unhint-small-vera.conf
...
[root@wjl ~]# tar -czvf 2020-07-08-21-22-22.tar.gz 2020-07-08-21-22-22/
2020-07-08-21-22-22/
...
2020-07-08-21-22-22/65-0-lohit-bengali.conf
2020-07-08-21-22-22/59-liberation-sans.conf
2020-07-08-21-22-22/65-0-khmeros-base.conf
2020-07-08-21-22-22/59-liberation-mono.conf
2020-07-08-21-22-22/31-cantarell.conf
...
[root@wjl ~]# ls /usr/local/src
2020-07-08-21-22-22  2020-07-08-21-22-22.tar.gz

3、利用sed取出ifconfig命令中本机的IPv4地址。

[root@wjl ~]# ifconfig eno16777736 | sed -n "/\([0-9].\)\{3\}[0-9][[:apace:]]\+/p" | tr -s " " : | cut -d':' -f'3'   #首先使用sed命令取出含有IP地址的行,再用tr命令将行中所有的空白字符替换为“:”,最后使用cut按列取出第三字段即为IP地址
192.168.62.3

4、删除/etc/fstab文件中所有以#开头且后面至少跟一个空白字符的行的行首的#和空白字符。

[root@wjl ~]# sed "s/^#[[:space:]]\+//" /etc/fstab

#
/etc/fstab
Created by anaconda on Sat Nov 30 14:37:40 2019
#
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/rhel-root                     /             xfs      defaults   1 1
UUID=9163315f-3092-45eb-a672-1dec4bb9403c /boot         xfs      defaults   1 2
/dev/mapper/rhel-swap                     swap          swap     defaults   0 0
/dev/cdrom                                /media/cdrom  iso9660  defaults   0 0

5、处理/etc/fstab路径,使用sed命令取出其目录名和基名

[root@wjl ~]# echo "/etc/fstab" | sed "s/\/[^/]*$//"   # \为转义符,编辑命令查找替换s///也可表示为 s@@@ 或 s###
/etc
[root@wjl ~]# echo "/etc/fstab" | sed -nr 's#(.*/)(.*)$#\2#p'
fstab

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值