導航:首頁 > 文件類型 > 批量文件改名linux

批量文件改名linux

發布時間:2023-09-07 15:46:03

『壹』 linux文件改名的命令

1、連接上相應的linux主機,進入到等待輸入shell指令的linux命令行狀態下。

『貳』 linux文件重命名命令

具體如下。
mv較簡單的處理命令:mvmv原文件名新文件名如:mvmyFilenewName將MyFile重命名為newName.linux提供了一個重命名文件命令:rename
renamefromtofile1file2。這個命令在批量唯和重命名是更好用如:renamemyFilenewNamemyFile.textmyFile2.textmyFile3.text。
Linux是一種自由和開放源代碼的類UNIX操作系統。該操作系統的內核由林納斯·托瓦茲在1991年10月5日首次發布。在加上用戶空間的應用程序之後,成為Linux操作系統。Linux也是自由軟體和開放源代碼軟體發展中最著名的皮山舉例子。只要遵循GNU通用公共許可證,任何個人和機構都可以自由地使用Linux的所有底層源代碼,也可以自由地修改和再發布。大多數Linux系統還包括了像提供GUI界面的XWindow之類的程序。除了一部分專家之外,大多數人都是直接使用Linux發布版,而不是自己選擇每一樣組件或自行設燃碧置。以後藉助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX類操作系統,並且使用人數還在迅猛增長。

『叄』 linux怎麼批量修改文件名稱

可以用腳本實現批量文件名稱修改,以perl腳本為例:

注釋:

1. # touch rename.perl //創建一個文件:rename.perl , 內容如下。

2. # chmod +x rename.perl

3. # cp rename.perl /bin/

4. # rename.perl 's/gongxu/leibie/g' * //將目錄中所有文件名中的 gongxu 替換為 leibie。

#!/usr/bin/perl -w
# rename - Larry's filename fixer
#用法: Perl表達式 [要處理的文件名]
$op = shift or die "Usage: rename expr [files]\n";

#如果沒有給出要處理的文件名則從標准輸入讀入
chomp(@ARGV = <STDIN>) unless @ARGV;

for (@ARGV) {
$was = $_;
eval $op; #對待處理的文件名($_)執行用戶輸入的Perl表達式$op
die $@ if $@; #退出 , 如果eval出錯
rename($was,$_) unless $was eq $_;
}

rename腳本的經典實例示範:

% rename.perl 's/\.orig$//' *.orig #移除文件末尾的.orig

% rename.perl "tr/A-Z/a-z/ unless /^Make/" * #所有非Make打頭的文件名大寫轉為小寫

% rename.perl '$_ .= ".bad"' *.f #每個*.f文件後面追加一個.bad

% rename.perl 'print "$_: "; s/foo/bar/ if =~ /^y/i' * #回顯每個待處理的文件名, 等待輸入, 如果用戶輸入以y或Y打頭, 把文件名中的foo替換成bar

% find /tmp -name "*~" -print | rename.perl 's/^(.+)~$/.#$1/' #把 /tmp目錄裡面每個文件名末尾有~的文件名改成以.#開頭

『肆』 linux下怎麼樣重命名文件

linux下重命名文件有兩種方式:

1.較簡單的處理命令:mv

mv
原文件名
新文件名

如:mv myFile newName

將MyFile重命名為newName

2.linux提供了一個重命名文件命令:rename

如:rename
myFile
newName
myFile.text

將myFile.text重命名為newName.text

3.有時想要改變文件名的大小寫,你可以使用下面的命令。

『伍』 windows與linux下 如何批量更改文件名

提供一個在Linux下使用Shell腳本來批量改名的方法,我很久不用Windows系統了,所以只有Linux下的方法。

我這邊在Linux下的測試過程是下面這樣的:

「0」提醒:在終端terminal中,第一步就是把當前目錄切換到文件所在目錄,用cd命令。

「1」新建文件夾,起名為「rename_by_source」,用來放置「改名前的文件」、「shell腳本文件」、「文件名對應文件」,以及保存「改名後的文件」。你在自己電腦上操作時,也建議你把下載下來的需要改名的文件放到一個單獨的文件夾里,這樣容易查看一些。

「2」我新建的「rename_by_source」文件夾中,根據你給的文件名對應表,新建了4個「改名前的文件」,它們是空白文件,只是有個文件名而已,另外,估計文件類型是mp3文件,所以後綴名是.mp3,如果你的文件不是mp3類型的話,請屆時自行在shell腳本文件里更改相關的代碼行。

「3」在文件夾中,新建了「source_name.txt」文件,用來放置(改名前)與(改名後)的對應文件名,跟你給的圖片一樣,也是一行對應一個文件的,只不過,把ren那一列刪除了。如果你要直接使用下面提供的shell腳本的話,也請把你的文件名對應文件中的ren那一列刪除,並且「數字」名的前面不要有空格或其它字元。同時,你的文件名對應文件也請保存為「source_name.txt」這個名稱和格式的文件。

「4」shell腳本文件「rename_by_source.sh」,內容如下:

#!/bin/bash

catsource_name.txt|whilereadLINE
do
ori_name=${LINE:0:7};
des_name=${LINE:8};
cp"${ori_name}.mp3""${des_name}.mp3";
done

解釋一下,第3句是逐行讀取source_name.txt的內容,並賦值給變數LINE,第5句是把該行的第1至第8個字元作為原始文件名,第6句是把該行的第9至末尾的字元串作為新文件名,第7句是在當前文件夾下「復制」(原始文件名.mp3)文件並重命名為(新文件名.mp3)文件。

之所以採用「復制」而不是「移動」命令,主要還是希望避免誤操作。

「5」在前面的文件夾中,新建並保存上述shell腳本文件,然後在終端terminal里賦予此shell腳本文件的可執行許可權,反正也沒有什麼關系,我是直接改為了777許可權:

sudochmod777rename_by_source.sh

「6」在終端中,在當前文件夾下運行上述shell腳本文件:

./rename_by_source.sh

完成。

下面是我這里的測試截圖,

如有幫助,煩請採納,謝謝!

『陸』 linux 重命名大量文件

linux下重命名文件或文件夾、批量實現重命名文件方法
一、
linux下重命名文件或文件夾的命令mv既可以重命名,又可以移動文件或文件夾.
例子:將目錄A重命名為B
mv A B
例子:將/a目錄移動到/b下,並重命名為c
mv /a /b/c

其實在文本模式中要重命名文件或目錄的話也是很簡單的,我們只需要使用mv命令就可以了,比如說我們要將一個名為abc的文件重命名為1234就可以這樣來寫:mv abc 1234,但是要注意的是,如果當前目錄下也有個1234的文件的話,我們的這個文件是會將它覆蓋的。
二、
Linux批量重命名文件會涉及到改變一個字母、改變一些相連字母、改變某些位置的字母、在最前面加上某些字母、或者改變字母的大小寫。完成這里五個方法基本上就會解決了Linux批量重
命名的工作。
1、我想把它們的名字的第一個1個字母變為"q",其它的不變
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/^./q/'`; done
或者寫個腳本,顯得更加清晰:
for file in `ls`
do
newfile =`echo $i | sed 's/^./q/'`
mv $file $newfile
done
2、修改前面5個字母為zhaozh
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/^...../zhaozh/'`; done
3、修改後面5個字母為snail
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/.....$/snail/'`; done
4、在前面添加 _hoho_
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo "_hoho_"$i`; done
5、所有的小寫字母變大寫字母
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | tr a-z A-Z`; done
上面是五中完成有關Linux批量重命名方法。

『柒』 Linux批量重命名文件命令

rename

相關命令:mv

rename 用於 對文件進行命名管理,可進行批量命名並支持正則表達式, rename命令存在兩個版本用法上有所區別 一個是 C語言版本支持通配符,另一個是 Perl版本.支持正則表達式

參數

-n 操作預覽,在不更改文件名稱情況下,顯示執行後的結果
-f 強制執行

【常用通配符說明】
? 表示一個任意字元
* 表示一個或一串任意字元
-------------------------------------------------
【常用正則表達式符號說明】
^ 匹配輸入的開始位置
$ 匹配輸入的結尾
. 匹配除換行符外的任意字元
+ 匹配前一個字元一次或多次 例如,"zo+"可以匹配"zoo",但不匹配"z"
[a-z] 表示某個范圍內的字元,例如,"[a-z]"匹配"a"與"z"之間的任何一個小寫字母字元。
[^m-z] 否定的字元區間。與不在指定區間內的字元匹配。

最後更新 2013-05-17 10:41:4
[root@localhost www]# rename 's/$/\.^abc/' /home/www/def #給www目錄下的abc 更改為def 僅共參考。

『捌』 linux批量修改目錄或者文件名

查看/home下所有子目錄的ok.txt並修改成OK.txt

linux 批量重名名
Linux Shell 批量重命名的方法總覽

1、刪除所有的 .bak 後綴:

2、把 .jpe 文件後綴修改為 .jpg:

3、把所有文件的文件名改為小寫:

4、將 abcd.jpg 重命名為 abcd_efg.jpg:

5、將 abcd_efg.jpg 重命名為 abcd_lmn.jpg:

6、把文件名中所有小寫字母改為大寫字母:

7、把格式 *_?.jpg 的文件改為 *_0?.jpg:

8、把文件名的前三個字母變為 vzomik:

9、把文件名的後四個字母變為 vzomik:

『玖』 Linux 下使用 shell 批量修改文件名的三種方法

1、通過sed替換

[root@node01 wolf]# find / -type f -name wolf.log

/wolf.log

/tmp/wolf.log

/root/wolf/wolf.log

[root@node01 wolf]# sed -i 's#wolf#yujing#g' find / -type f -name wolf.log

[root@node01 wolf]# find / -type f -name "wolf.log" | xargs cat

yujing

yujing

yujing

[root@node01 wolf]#

2、通過變數子串替換

vi laolang.log

wolf_20170806_1_wolf.jpg

wolf_20170806_2_wolf.jpg

wolf_20170806_3_wolf.jpg

wolf_20170806_4_wolf.jpg

wolf_20170806_5_wolf.jpg

wolf_20170806_6_wolf.jpg

wolf_20170806_7_wolf.jpg

wolf_20170806_8_wolf.jpg

wolf_20170806_9_wolf.jpg

wolf_20170806_10_wolf.jpg

[root@node01 data]# touch cat laolang.log |tr "\n" " "

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# f=wolf_20170806_10_wolf.jpg

[root@node01 data]# echo $f

wolf_20170806_10_wolf.jpg

[root@node01 data]# echo ${f%wolf*.jpg}

wolf_20170806_10_

[root@node01 data]# mv $f echo ${f%wolf*.jpg}.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# for f in ls *wolf.jpg ;do mv $f echo ${f%wolf*.jpg}.jpg;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

3、修改擴展名

把上面的jpg更換為log

[root@node01 data]# f=wolf_20170806_10_.jpg

[root@node01 data]# echo ${f/%jpg/log} 

wolf_20170806_10_.log

[root@node01 data]# mv $f ${f/%jpg/log}

[root@node01 data]# ls

apache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpg

apache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpg

cat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

[root@node01 data]# for f in ls *.jpg ;do mv $f ${f/%jpg/log} ;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log

以上就是本次分享的全部內容,現在想要學習的程序員歡迎關注六星社區,獲取更多技能與教程

閱讀全文

與批量文件改名linux相關的資料

熱點內容
列表文件存儲路徑 瀏覽:540
qq游戲大廳自動出語音 瀏覽:598
編程只是興趣怎麼辦 瀏覽:223
榮耀6plus電信版本 瀏覽:584
能打開word文件但桌面上找不到 瀏覽:366
2020十大網路紅歌有哪些 瀏覽:843
手機系統空間文件夾在哪裡設置快捷鍵 瀏覽:309
通信網路中的b8什麼意思 瀏覽:715
桌面文件標題 瀏覽:228
優淘集市有什麼app 瀏覽:747
找不到收藏文件 瀏覽:711
戰狼2在什麼網站 瀏覽:785
vb修改word 瀏覽:650
c盤分頁文件 瀏覽:277
ipad如何互相傳輸數據 瀏覽:567
我的世界如何用積木編程大師復制方塊 瀏覽:638
進網站請求路徑未找到是怎麼回事 瀏覽:807
spss21教程 瀏覽:655
css商業網站布局之道pdf 瀏覽:892
c盤不能新建文件夾win10 瀏覽:384

友情鏈接