欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Shell實(shí)現(xiàn)批量操作文件的方法詳解

 更新時(shí)間:2022年09月29日 09:24:22   作者:將沖破艾迪i  
這篇文章主要為大家總結(jié)了一下Shell實(shí)現(xiàn)批量操作文件的命令,例如:查找某文件夾下指定文件所在的路徑、批量刪除某個(gè)文件夾下的指定文件,感興趣的可以了解一下

1.文件夾結(jié)構(gòu)

準(zhǔn)備如下文件夾結(jié)構(gòu)作為演示:

如E:\Code\Shell有如下文件夾結(jié)構(gòu),有3個(gè)相同文件test.txt

2.查找某文件夾下指定文件所在的路徑

find可以查找某個(gè)目錄下的指定文件(或目錄)所在的路徑

find 目錄名 -name 文件名
# 查找Shell文件夾下test.txt所在路徑
find Shell -name test.txt

執(zhí)行結(jié)果:

Shell/a/test/test.txt
Shell/b/test/test.txt
Shell/c/test/test.txt

如果不指定目錄名,則是查找當(dāng)前文件夾下的文件

# 查找當(dāng)前文件夾下的test.txt所在路徑
find -name test.txt

執(zhí)行結(jié)果:

./Shell/a/test/test.txt
./Shell/b/test/test.txt
./Shell/c/test/test.txt

3.批量刪除某個(gè)文件夾下的指定文件

刪除某個(gè)目錄下的指定文件(或目錄)

find 目錄名 -name 文件名 |xargs rm -rf
# 刪除Shell文件夾下所有test.txt
find Shell -name test.txt |xargs rm -rf

刪除test.txt后的文件夾結(jié)構(gòu)如下

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

編寫腳本batch_rename_file.sh,內(nèi)容如下:

# 批量重命名指定文件夾下的文件名或目錄名
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

執(zhí)行腳本,結(jié)果如下:

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后的文件夾結(jié)構(gòu)如下:

5.批量將某文件夾下指定文件移至上級(jí)目錄

編寫腳本mv_file_to_upperLevel.sh,內(nèi)容如下:

# 批量將指定文件夾下的文件或目錄,移至上級(jí)目錄
fileName="test.txt" # 文件名
targetFolder="Shell" # 指定文件夾名

for filePath in  `find $targetFolder -name $fileName`
do
    upperLevelDir=`dirname $(dirname $filePath)` # 上級(jí)目錄
    mv $filePath $upperLevelDir
    echo "$filePath -> $upperLevelDir/$fileName"
done

執(zhí)行腳本,結(jié)果如下:

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

移動(dòng)test.txt至上級(jí)目錄后的文件夾結(jié)構(gòu)如下:

到此這篇關(guān)于Shell實(shí)現(xiàn)批量操作文件的方法詳解的文章就介紹到這了,更多相關(guān)Shell批量操作文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 查看linux中某個(gè)端口(port)是否被占用的方法

    查看linux中某個(gè)端口(port)是否被占用的方法

    下面小編就為大家?guī)硪黄榭磍inux中某個(gè)端口(port)是否被占用的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Linux traceroute命令使用方法實(shí)例詳解

    Linux traceroute命令使用方法實(shí)例詳解

    這篇文章主要介紹了Linux traceroute命令使用方法實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解應(yīng)用這部分內(nèi)容, 需要的朋友可以參考下
    2017-10-10
  • Linux下使用expect命令編寫自動(dòng)化交互腳本

    Linux下使用expect命令編寫自動(dòng)化交互腳本

    今天小編就為大家分享一篇關(guān)于Linux下使用expect命令編寫自動(dòng)化交互腳本,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • Linux Bash腳本中的IFS的作用

    Linux Bash腳本中的IFS的作用

    ??在處理文本數(shù)據(jù)時(shí),Bash 將文本分割成多個(gè)字段,這些字段之間由 IFS 指定的字符進(jìn)行分隔,本文主要介紹了Linux Bash腳本中的IFS的作用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-05-05
  • shell監(jiān)控腳本 準(zhǔn)備工作分享

    shell監(jiān)控腳本 準(zhǔn)備工作分享

    這篇文章主要介紹了在編寫監(jiān)控功能腳本需要做的一些工作,需要的朋友可以參考下
    2013-11-11
  • 詳解Linux解壓縮文件

    詳解Linux解壓縮文件

    這篇文章給大家介紹了Linux解壓縮文件的命令,感興趣的朋友跟隨腳本之家小編一起看看吧
    2018-05-05
  • Linux 下xargs命令詳解及xargs與管道的區(qū)別

    Linux 下xargs命令詳解及xargs與管道的區(qū)別

    在工作中經(jīng)常會(huì)接觸到xargs命令,特別是在別人寫的腳本里面也經(jīng)常會(huì)遇到,但是卻很容易與管道搞混淆,本篇會(huì)詳細(xì)講解到底什么是xargs命令,為什么要用xargs命令以及與管道的區(qū)別,本文通過實(shí)例給大家詳解,需要的的朋友參考下
    2017-04-04
  • 一天一個(gè)shell命令 linux文本內(nèi)容操作系列-grep命令詳解

    一天一個(gè)shell命令 linux文本內(nèi)容操作系列-grep命令詳解

    這篇文章主要介紹了一天一個(gè)shell命令 linux文本內(nèi)容操作系列-grep命令詳解 ,需要的朋友可以參考下
    2016-06-06
  • Shell編程中的特殊變量之進(jìn)程狀態(tài)變量介紹

    Shell編程中的特殊變量之進(jìn)程狀態(tài)變量介紹

    這篇文章主要介紹了Shell編程中的特殊變量之進(jìn)程狀態(tài)變量介紹,本文講解了$$、$!、$?、$@、$_這些特殊變量,需要的朋友可以參考下
    2014-12-12
  • Solr服務(wù)在Linux上的搭建的圖文教程

    Solr服務(wù)在Linux上的搭建的圖文教程

    下面小編就為大家分享一篇Solr服務(wù)在Linux上的搭建的圖文教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助
    2017-12-12

最新評(píng)論