查找指定后缀文件并删除

在写makefile的过程中,clean中需要删除编译过程中产生的 .o 文件

查找文件 find [目录名] -name

find obj -name '*.o'  
find obj -name "*.o"  
find obj -name *.o  
find obj -type f|grep .o$
以上四种测试都可行,日后再琢磨有啥区别

“并删除”有两种方式:

1. 用find命令的 -exec 选项

find obj -name *.o -type f -exec rm -f {} \;


2. 用xargs

find obj -name *.o | xargs rm -f
find obj -type f | grep .o$|xargs rm -f

最后一个,如果要写入 makefile,要写成

find obj -type f | grep .o$$|xargs rm -f
因为 $ 在makefile中是特殊字符

不过,最终为了可以在删除前可以把文件名打印一遍以防止删错文件而不知道,最终决定选用

find obj -type f -name '*.o' -print -exec rm -f {} \;

至于后一种写法能不能也实现这样的效果,如果有朋友看到,希望可以告诉下我,多谢了。我猜测可以用echo吧

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值