1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > linux php 修改文件名后缀 Linux: mv rename单次及批次修改档案名称及后缀(批

linux php 修改文件名后缀 Linux: mv rename单次及批次修改档案名称及后缀(批

时间:2022-02-01 13:14:06

相关推荐

linux php 修改文件名后缀 Linux: mv  rename单次及批次修改档案名称及后缀(批

在Windows 系统中,无论我们要重新命名资料夹或是档案,

通常都点下右键后选择重新命名即可,

如果对快捷键比较熟,直接按下F2 可以更快地达成目的。

而在Linux系统中,重新命名资料夹或档案也可以透过同一个指令来达成,这个指令是mv!mv 是move 的缩写,他除了移动档案资料夹的功能外也可以同时重新命名。

所以其实仔细想想拿他来重新命名档案也不会很难理解啦,

重新命名时只是把档案移动到同一个资料夹,然后趁着移动时把档名给顺便改了!

说了这么多那mv 指令到底该怎么使用呢?

Java代码

#mv$1$2

#$1:旧档案或资料夹名称

#$2:新的档案或资料夹名称

mvoldname.txtnewname.txt

上面的方法是用来重新命名单一档案或资料夹,

但是当一个目录资料夹底下有很多有特定规则档名的档案需要改名,

例如相机产生的档案IMG001.jpg~IMG999.jpg 超多档案,

这绝对不可能直接用mv 一个个慢慢敲来改名的。

这时候另一个指令就可以派上用场了,

rename 这个指令可以用来批次修改档名共同的部分,使用方式如下:

Java代码

#rename$1$2$3

#$1:要被取代的关键字

#$2:新的关键字

#$3:档名符合这个规则的才取代

#把IMG001.jpg,IMG002.jpg…换成img001.jpg,img002.jpg…

renameIMGimgIMG*

#把所有.htm档案改成.html

rename.htm.html*.htm

#把档案foo1,...,foo9,foo10,...,foo278.

#改成foo001,...,foo009,foo010,...,foo278.

renamefoofoo0foo?

renamefoofoo0foo??

来源://04/linux-scriptmv-rename.html

rename

相关命令:

mv

rename 用于 对文件进行命名管理,可进行批量命名并支持正则表达式,

rename命令存在两个版本用法上有所区别

一个是 C语言版本支持通配符,

另一个是 Perl版本.支持正则表达式

参数

-n 操作预览,在不更改文件名称情况下,显示执行后的结果

-f 强制执行

【常用通配符说明】

? 表示一个任意字符

* 表示一个或一串任意字符

-------------------------------------------------

【常用正则表达式符号说明】

^ 匹配输入的开始位置

$ 匹配输入的结尾

. 匹配除换行符外的任意字符

+ 匹配前一个字符一次或多次 例如,"zo+"可以匹配"zoo",但不匹配"z"

[a-z] 表示某个范围内的字符,例如,"[a-z]"匹配"a"与"z"之间的任何一个小写字母字符。

[^m-z] 否定的字符区间。与不在指定区间内的字符匹配。

Java代码

[rootwww]#rename's/\.sh/\.php/'*#将当前目录下.sh后缀的文件,变成.php

[rootwww]#rename's/$/\.bak/'/home/www/*.php#给www目录下的.php加上bak后缀

[rootwww]#rename's/^/bak_/'*.bin#给当前目录下的.bin后缀文件加上bak_前缀

[rootwww]#rename's/\.bin$//'*#批量删除当前目录下所有文件的.bin后缀

[rootwww]#rename's/A-Z/a-z/'*#修改当前目录所有文件名为小写

其他方法:

C代码

foriin`ls`;domv-f$i`echo$i|sed's/oldstring/newstring/'`;done

或者

Java代码

#使用perl语言

find./-name'*.sh'|xargsperl-pi-e's|string1|string2|g'

#使用sed程序

find./-name'*.sh'|xargssed-i's/string1|string2/g'

上面的'*.sh'替换成需要修改的文件名,string1是需要修改的字符串,string2是修改后的字符串。

linux php 修改文件名后缀 Linux: mv rename单次及批次修改档案名称及后缀(批量修改文件名)...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。