怎样批量修改文件后缀图片后缀

当前位置: >
Linux中如何批量修改文件的扩展名
()原创文章:在管理Linux的过程中,需要批量的对文件进行修改扩展名的操作,如果一个一个的修改,哪的确是一件非常痛苦的事,我们可以借助以下的方法以实现轻构、快速的批量修改文件扩展名。
# for i in *.mp3; do mv $i `basename $i .mp3`.done
将所有以.mp3结尾的文件扩展名修改为.mp3.bak结尾
在debian系统的dash中,命令如下:
rename '/\.mp3/\.MP3/' *.mp3
在fedora系统的bash中,命令如下:
rename .mp3 .MP3 *.mp3
注意区别命令的不同形式。
Linux中如何批量修改文件的扩展名的相关阅读:
本站文章《》除注明转载外,均为本站原创或编译
转载请注明:本文由()提供欢迎免费转载,转载时请保留该信息,谢谢合作!
------分隔线----------------------------
Linux中如何批量修改文件的扩展名的网友评论PHP 批量修改文件名/文件后缀名(扩展名)-Php常用代码-Php教程-壹聚教程网PHP 批量修改文件名/文件后缀名(扩展名)今天我有几千个文件要一次修改文件或把后缀名给改了,但是我要手工一个个去改,不得改几天后来想到一个办法,利用php写一个量修改文件名/文件后缀名程序,一下就实现了,下面来看看方法。 几个关键的函数。
is_dir($dirname)&&&&& //判断一个文件名是否 为目录
($dirname)&&&&& //打开一个文件夹
readdir($dir_stream)&& //函数返回由 opendir() 打开的目录句柄中的条目
pathinfo($path)&&&&&&& //函数以数组的形式返回文件路径的信息。
例如当前文件夹下的P1010436
例如当前文件夹下的P1010436.jpg文件路径信息数组:
&&& [dirname] =& .
&&& [basename] =& P1010436.jpg
&&& [extension] =& jpg
&&& [filename] =& P1010436
rename(oldname,newname,context) //函数重命名文件或目录。若成功,则该函数返回 true。若失败,则返回 false。
function fileRename($dir,$srcExtension,$desExtension){
&if(!is_dir($dir)){
&&echo &{$dir}不是一个有效的目录!n&;
&&exit();&&
&$handler = opendir($dir);
&//列出$dir目录中的所有文件
&while(($fileName = readdir($handler))!=false){
&&if($fileName!='.'&&$fileName!='..'){
&&&//'.' 和 '..'是分别指向当前目录和上级目录
&&&$curDir = $dir.'/'.$fileN
&&&if(is_dir($curDir)){
&&&&//如果是目录,则递归下去
&&&&fileRename($curDir,$srcExtension,$desExtension);
&&&&&//获取文件路径的信息
&&&&&$path = pathinfo($curDir);
&&&&&//print_r($path);
&&&&&if($path['extension']==$srcExtension){ &
&&&&&&$newname = $path['dirname'].'/'
&&&&&&.$path['filename'].&.&.$desE
&&&&&&rename($curDir,$newname);&&&
&&&&&&echo $curDir.'--&'.$newname.&n&;&&&
fileRename(&.&,&JPG&,&jpg&);
使用方法很简单,我们把图片与php文件同一目录然后再运行php即可。
上一页: &&&&&下一页:相关内容厦门,这座美丽的海滨城市。岛屿小清新,海边小浪漫,面向大海,春暖花开,是一个让人充满憧憬的地方,也是一个让人一想起来,就有说走就走的冲动的城市。
三毛:台湾著名作家,日出生于重庆,浙江省定海县人。本名为陈懋平,1946年改名陈平,笔名“三毛”。
美到令人窒息的秋天 金黄的季节
从台北乘坐高铁到达高雄左营站,沿路风景秀丽,美不胜收,让人看到眼花缭乱,耗时一个半小时到达目的地,也挺快的。
小罗伯特-唐尼日前参加知名脱口秀时承认,《钢铁侠4》确实正在紧张开发之中,不过之前希望梅尔-吉布森来执导的表态只是一个玩笑。
这是一鸣的硬汉(Shellback)证。谁想当硬汉,就必须接受考验,否则就永远是一个软蛋。
这是一鸣的狗牌(Dog Tag)。每一个美国大兵都有两个狗牌,上面刻有其本人的基本信息,如姓名、血型、社会安全号码(Social Security Number,相当于中国的身份证号码。这里抹去了前5个数字)。
现年25岁的AKB人气成员小嶋阳菜,2年前曾于西麻布的夜店...
Categories
Select Category
媒体&&(29)
&&&历史&&(9)
&&&娱乐&&(3)
&&&摄影&&(3)
&&&视频&&(14)
新闻&&(79)
&&&体育&&(3)
&&&国际&&(8)
&&&教育&&(2)
&&&社会观察&&(21)
&&&科学&&(1)
&&&科技资讯&&(32)
&&&财经&&(12)
&&&健康&&(5)
&&&奇闻趣事&&(2)
&&&文化&&(2)
编程&&(103)
&&&Linux系统&&(28)
&&&Mac系统&&(14)
&&&Misc&&(5)
&&&Web前端&&(18)
&&&&&&css&&(2)
&&&&&&javascript&&(2)
&&&开源&&(20)
&&&&&&php&&(2)
&&&&&&python&&(16)
&&&移动开发&&(16)
记录&&(15)
&&&感悟&&(8)
&&&旅游&&(3)
&&&随笔&&(4)
学习研究和实际使用中会经常碰到集中、批量文件改名或者添加和删除文件名的问题,所以下定决心研究一下,为了一劳永逸地解决了这个问题,多方学习,下面列出了目前我所能掌握的方法和命令,不正之处请大家指正,欢迎评点、补充,谢谢!
第一种情况: 为文件加后缀
在相同的目录下有海量以日期命名的文件,其中有的有后缀,有的以点结尾,如.,.,……,.td,.td,……
要求: 把所有以点结尾的加上后缀.ts
我自己的方法:
#!/bin/bash
for files in `ls *.`
mv $files `echo “$filests” `
$files ${files}ts
`$files.ts|sed ‘s/\.//’ `
4. file =&file.txt
$files.txt
=& *04.txt
mv $files $(echo ${files}.txt|sed ‘s/\.//1′)
`echo ${files}.txt|sed ‘s/\.//1′ `
第二种情况: 为文件改后缀(.old =& .new)
有如下方法可供选择:
1. rename .old .new
2. mv $files ${file%.old}.new
3. mv $files `echo $files|tr .old .new`
4. mv $files `echo $files|sed ‘s/\.old/\.new/’ `
第三种情况: 给文件去掉后缀 (*.dat =& *)
1. mv $files `echo $files |sed ‘s/\.dat//’ `
2. mv $files
`echo $files|tr .dat
(4空格)`
第四种情况:为文件改前缀 (re* =& un*)
1. mv $files un${$files#re}
2. mv $files `echo $files | tr re un`
但是在实际使用的时候,碰到一个批量地在好多子目录下修改文件后缀名的问题,例如,现在你有如下的目录结构:
[lan@/home/lan/tmp]$tree
|– 11
| `– aa
| `– 11.gif
`– 22
`– bb
`– 22.gif
4 directories, 2 files
[lan@/home/lan/tmp]$
如何才能不用分别进入11/aa目录和22/bb目录下,就可以一次性地将后缀名为gif的文件修改为以jpg为后缀名的文件呢?经过自己的不断尝试和实验,终于找到了完美的命令和方法,只需要在/home/lan/tmp目录下执行如下的命令即可以一次完成这个任务:
效果相当爽,不妨你自己试试看
Related Posts:
Leave a reply
明星娱乐八卦新闻 | 电影快讯
Designed by

我要回帖

更多关于 批量修改文件后缀 的文章

 

随机推荐