您的位置:首页 > 运维架构 > Linux

Linux下批量修改后缀名

2016-01-29 13:48 344 查看
一.rename解决

1. Ubuntu系统下

rename 's/.c/.h/' ./*

把当前目录下的后缀名为.c的文件更改为.h的文件

2. CentOS5.5系统下

rename .c .h *.c

把当前目录下的后缀名为.c的文件更改为.h的文件

二.shell 脚本解决

#!/bin/bash

#http://blog.csdn.net/longxibendi

find ./ -name *.c | while read i

do

echo "$i";

mv $i.c $i.h

done

三.find xargs 解决

find ./ -name "*.c" | awk -F "." '{print $2}' | xargs -i -t mv ./{}.c ./{}.h

注意,第三种方案是递归的更改,会更改当前目录下及其子目录下所有匹配文件

rename 的一种用法。

一:问题的提出

比如我的/home/有 m.php.bak n.php.bak 俩个文件,怎么将文件名的 ;1 去掉。

三:解释

rename 's/.php.bak/.php/' ./*

格式 :

rename '命令参数/原串/替换后的串/' 目录文件

rename 表示重命名

s 表示替换

转载至:http://sj0621.blog.51cto.com/753618/709376
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: