广告
返回顶部
首页 > 资讯 > 操作系统 >Shell实现批量操作文件的方法详解
  • 783
分享到

Shell实现批量操作文件的方法详解

2024-04-02 19:04:59 783人浏览 八月长安
摘要

目录1.文件夹结构2.查找某文件夹下指定文件所在的路径3.批量删除某个文件夹下的指定文件4.批量重命名某文件夹下指定的文件名5.批量将某文件夹下指定文件移至上级目录1.文件夹结构 准备如下文件夹 如E:\Code\she

目录
  • 1.文件夹结构
  • 2.查找某文件夹下指定文件所在的路径
  • 3.批量删除某个文件夹下的指定文件
  • 4.批量重命名某文件夹下指定的文件名
  • 5.批量将某文件夹下指定文件移至上级目录

1.文件夹结构

准备如下文件夹

如E:\Code\shell有如下文件夹结构,有3个相同文件test.txt

Shell实现批量操作文件的方法详解

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后的文件夹结构如下

Shell实现批量操作文件的方法详解

4.批量重命名某文件夹下指定的文件名

编写脚本BATch_rename_file.sh,内容如下:

# 批量重命名指定文件夹下的文件名或目录名
oldFileName="test.txt" # 原文件名
newFileName="case.txt" # 新文件名
targetFolder="Shell" # 指定文件夹名

for filePath in  `find $targetFolder -name $oldFileName`
do
    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后的文件夹结构如下:

Shell实现批量操作文件的方法详解

5.批量将某文件夹下指定文件移至上级目录

编写脚本mv_file_to_upperlevel.sh,内容如下:

# 批量将指定文件夹下的文件或目录,移至上级目录
fileName="test.txt" # 文件名
targetFolder="Shell" # 指定文件夹名

for filePath in  `find $targetFolder -name $fileName`
do
    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实现批量操作文件的方法详解的文章就介绍到这了,更多相关Shell批量操作文件内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

--结束END--

本文标题: Shell实现批量操作文件的方法详解

本文链接: https://www.lsjlt.com/news/34309.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作