目录
- 1.文件夹结构概述
- 2.查找指定文件夹下的特定文件路径
- 3.批量删除指定文件夹中的特定文件
- 4.批量重命名指定文件夹下的文件
- 5.批量将指定文件夹下的文件移动到上一级目录
1.文件夹结构概述
准备如下文件夹结构:
例如,E:\Code\Shell包含以下结构,其中有3个相同的文件test.txt
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

2.查找指定文件夹下的特定文件路径
使用find命令可以查找某个目录下的指定文件(或目录)的路径。
find 目录名 -name 文件名
# 查找Shell文件夹下的test.txt路径 find Shell -name test.txt
执行结果:
Shell/a/test/test.txt
Shell/b/test/test.txt
Shell/c/test/test.txt
如果未指定目录名,则查找当前文件夹下的文件。
# 查找当前文件夹下的test.txt路径 find -name test.txt
执行结果:
./Shell/a/test/test.txt
./Shell/b/test/test.txt
./Shell/c/test/test.txt
3.批量删除指定文件夹中的特定文件
删除某个目录下的指定文件(或目录)。
find 目录名 -name 文件名 |xargs rm -rf
# 删除Shell文件夹下的所有test.txt find Shell -name test.txt |xargs rm -rf
删除test.txt后的文件夹结构如下:

4.批量重命名指定文件夹下的文件
编写脚本BATch_rename_file.sh,内容如下:
方科网络ERP图文店II版为仿代码站独立研发的网络版ERP销售程序。本本版本为方科网络ERP图文店版的简化版,去除了部分不同用的功能,使得系统更加精炼实用。考虑到图文店的特殊情况,本系统并未制作出入库功能,而是将销售作为重头,使用本系统,可以有效解决大型图文店员工多,换班数量多,订单混杂不清的情况。下单、取件、结算分别记录操作人员,真正做到订单全程跟踪!无限用户级别,不同的用户级别可以设置不同的价
# 批量重命名指定文件夹下的文件名或目录名 oldFileName="test.txt" # 原文件名 newFileName="case.txt" # 新文件名 targetFolder="Shell" # 指定文件夹名for filePath in
find $targetFolder -name $oldFileNamedo dirPath=dirname $filePath# 文件所在目录 mv $filePath $dirPath/$newFileName echo "$filePath -> $dirPath/$newFileName" done
执行脚本,结果如下:
Shell/a/test/test.txt -> Shell/a/test/case.txt
Shell/b/test/test.txt -> Shell/b/test/case.txt
Shell/c/test/test.txt -> Shell/c/test/case.txt
重命名test.txt后的文件夹结构如下:

5.批量将指定文件夹下的文件移动到上一级目录
编写脚本mv_file_to_upperlevel.sh,内容如下:
# 批量将指定文件夹下的文件或目录,移至上级目录 fileName="test.txt" # 文件名 targetFolder="Shell" # 指定文件夹名for filePath in
find $targetFolder -name $fileNamedo upperLevelDir=dirname $(dirname $filePath)# 上级目录 mv $filePath $upperLevelDir echo "$filePath -> $upperLevelDir/$fileName" done
执行脚本,结果如下:
Shell/a/test/test.txt -> Shell/a/test.txt
Shell/b/test/test.txt -> Shell/b/test.txt
Shell/c/test/test.txt -> Shell/c/test.txt
移动test.txt至上一级目录后的文件夹结构如下:

至此,本文详细介绍了使用Shell实现批量操作文件的方法。如果您想了解更多关于Shell批量操作文件的内容,请查阅我们之前的文章或继续浏览下面的相关文章。希望大家继续支持我们!









