遍历目录下的某个文件并删除

目录

需求

编写过程

演示


需求

        大家在学习时可能会有一个自己的小目录,里面放着各种奇葩代码,有天突然发现,没有空间了,这时候发现遗留了很多的可执行文件,大大的浪费了我们的空间,但是由于层数深,数量多一个一个的删除很麻烦这时候我们的脚本就登场啦。

编写过程

#!/bin/bash  # 使用find命令查找所有名为a.out的文件,并使用-exec选项删除它们  
find . -name "a.out" -type f -exec rm {} \;  echo "所有a.out文件已被删除。"

太单调了我想在打印时加上删除目标的目录

#!/bin/bash  # 使用find命令查找所有名为a.out的文件,并打印其绝对路径然后删除它们  
find . -name "a.out" -type f -exec bash -c 'echo "正在删除: $0"; rm "$0"' {} \;  echo "所有a.out文件已被删除。"

我还想统计删除文件的数量

#!/bin/bash  # 初始化计数器  
count=0  # 使用find命令查找所有名为a.out的文件,并打印其绝对路径然后删除它们  
find . -name "a.out" -type f -exec bash -c 'echo "正在删除: $0"; rm "$0"' {} \; -print | while read file; do  # 对于每个找到的文件,增加计数器  ((count++))  
done  # 打印被删除的文件数量  
echo "共删除了 ${count} 个 a.out 文件。"

我想递归的删除

#!/bin/bash  # 初始化计数器  
count=0  # 使用find命令递归查找所有名为a.out的文件,并打印其绝对路径然后删除它们  
find . -name "a.out" -type f -exec bash -c 'echo "正在删除: $1"; rm "$1"' -- {} \;  # 统计被删除的文件数量(使用find的-print和wc命令)  
count=$(find . -name "a.out" -type f -delete | wc -l)  # 打印被删除的文件数量  
echo "共删除了 ${count} 个 a.out 文件。"

成功删除了,但是有bug没有打印路径和统计信息

#!/bin/bash  # 初始化计数器  
count=0  # 使用find命令递归查找所有名为a.out的文件,并打印其绝对路径然后删除它们  
while IFS= read -r -d '' file; do  echo "正在删除: $file"  rm "$file"  ((count++))  
done < <(find . -name "a.out" -type f -print0)  # 打印被删除的文件数量  
echo "共删除了 ${count} 个 a.out 文件。"

我想指定我要删除文件的名字

#!/bin/bash  # 初始化计数器  
count=0  # 遍历传入的每个参数(文件名)  
for filename in "$@"; do  # 使用find命令递归查找所有匹配的文件名,并打印其绝对路径然后删除它们  while IFS= read -r -d '' file; do  echo "正在删除: $file"  rm "$file"  ((count++))  done < <(find . -name "$filename" -type f -print0)  
done  # 打印被删除的文件数量  
echo "共删除了 ${count} 个文件。"

演示

哦吼完美。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/564129.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汽车ABS的bangbang控制和模糊PID控制

1、内容简介 略 82-可以交流、咨询、答疑 2、内容说明 摘要&#xff1a;本文旨在设计一种利用模糊控制理论优化的pid控制器&#xff0c;控制abs系统&#xff0c;达到对滑移率最佳控制范围的要求 &#xff0c;所提出的方案采用级联控制架构&#xff1a;设计用于外环中的车轮打…

第四百二十二回

文章目录 1. 概念介绍2. 思路与方法2.1 实现思路2.2 实现方法 3. 示例代码4. 内容总结 我们在上一章回中介绍了"自定义标题栏"相关的内容&#xff0c;本章回中将介绍自定义Action菜单.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在这里提到的…

基于大数据的空气质量预测和可视化分析

城市空气质量数据采集系统设计与实现 &#x1f3d9;️ 研究背景 &#x1f32c;️ 城市化与环境挑战&#xff1a;随着城市化进程的加快&#xff0c;环境污染问题&#xff0c;尤其是空气质量问题&#xff0c;已成为公众关注的焦点。数据监测的重要性&#xff1a;城市空气质量数…

哪本书最了解孩子?跟《米小圈上学记》一起做孩子的“引路人”!

孩子是发展中的人&#xff0c;需要家长的陪伴&#xff0c;孩子的身心发展是有规侓的&#xff0c;是处于发展过程中的人。我们要学会尊重孩子的发展&#xff0c;从兴趣出发&#xff0c;关注孩子的成长。但是&#xff0c;家长不可能无时无刻都能陪在孩子身边&#xff0c;他需要一…

day06vue2学习

day06 路由的封装抽离 问题&#xff1a;所有的路由配置都堆在main.js中不太合适么&#xff1f;不好&#xff0c;会加大代码的复杂度 目标&#xff1a;将路由模块抽离出来。好处&#xff1a;差分模块&#xff0c;利于维护。 大致的做法就是&#xff0c;将路由相关的东西都提…

ChatGPT论文指南|揭秘8大ChatGPT提示词研究技巧提升写作效率【建议收藏】

点击下方▼▼▼▼链接直达AIPaperPass &#xff01; AIPaperPass - AI论文写作指导平台 公众号原文▼▼▼▼&#xff1a; ChatGPT论文指南|揭秘8大ChatGPT提示词研究技巧提升写作效率【建议收藏】 目录 1.写作方法 2.方法设计 3.研究结果 4.讨论写作 5.总结结论 6.书…

详解JavaScript中this指向

this 原理 this 是一个指针型变量&#xff0c;它指向当前函数的运行环境。 1.内存的数据结构 var obj { foo: 5 };2.函数 var obj { foo: function () {} };引擎会将函数单独保存在内存中&#xff0c;然后再将函数的地址赋值给foo属性的value属性。 由于函数是一个单独的…

【算法】 LRU Cache

目录 一、什么是LRU Cache 二、LRU Cache的实现 三、 LRU算法的运用场景 一、什么是LRU Cache LRU是Least Recently Used的缩写&#xff0c;意思是最近最少使用&#xff0c;它是一种Cache替换算法。 什么是 Cache&#xff1f;狭义的Cache指的是位于CPU和主存间的快速RAM&am…

购买腾讯云服务器需要多少钱?价格表查询

腾讯云服务器多少钱一年&#xff1f;61元一年起。2024年最新腾讯云服务器优惠价格表&#xff0c;腾讯云轻量2核2G3M服务器61元一年、2核2G4M服务器99元一年可买三年、2核4G5M服务器165元一年、3年756元、轻量4核8M12M服务器646元15个月、4核16G10M配置32元1个月、312元一年、8核…

【每周赠书活动第1期】Python编程 从入门到实践 第3版(图灵出品)

编辑推荐 适读人群 &#xff1a;本书适合对Python感兴趣的所有读者阅读。 编程入门就选蟒蛇书&#xff01; 【经典】Python入门经典&#xff0c;常居Amazon等编程类图书TOP榜 【畅销】热销全球&#xff0c;以12个语种发行&#xff0c;影响超过 250 万读者 【口碑】好评如潮…

突发!Stability AI的CEO,跑路了

ChatGPT狂飙160天&#xff0c;世界已经不是之前的样子。 新建了人工智能中文站https://ai.weoknow.com 每天给大家更新可用的国内可用chatGPT资源​ 发布在https://it.weoknow.com 更多资源欢迎关注 ​ 2024 年才第一季度&#xff0c;生成式 AI 明星公司就倒了俩&#xf…

Fantasy RPG Spell Pack 2

介绍奇幻角色扮演游戏魔法包VFX,这是为您的Unity奇幻角色扮演游戏提供的终极视觉效果解决方案!这个包包含30个独特的VFX,将为您的法术和能力带来生命,让您的玩家沉浸在魔法和奇迹的世界中。 从令人惊叹的彩虹盾和闪电到旋转门户和召唤圈,这个包有你需要的一切来创造一个真…