Linux下怎么通过shell批量修改文件名后缀?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下怎么通过shell批量修改文件名后缀?相关的知识,希望对你有一定的参考价值。

比如修改一下目录下的所有文件的后缀
ls -l|awk 'print $9'|xargs -I mv .bak
[root@ test]# touch a b c
[root@ test]# ls -l
total 0
-rw-r--r-- 1 root root 0 Apr 27 21:50 a
-rw-r--r-- 1 root root 0 Apr 27 21:50 b
-rw-r--r-- 1 root root 0 Apr 27 21:50 c
[root@ test]# ls -l|awk 'print $9'|xargs -I mv .bak
[root@ test]# ls -l
total 0
-rw-r--r-- 1 root root 0 Apr 27 21:50 a.bak
-rw-r--r-- 1 root root 0 Apr 27 21:50 b.bak
-rw-r--r-- 1 root root 0 Apr 27 21:50 c.bak
参考技术A

这个问题还是比较简单的。我们通过对变量的字符串替换就能实现。

抽风了,贴不了代码了。你参考一下咯

# linuxprobe.com

# 第4章 Vim编辑器与Shell命令脚本。

read directory;

if [ -d $directory ]

then

pushd $directory;

# Handle Rename Process 

for fname in `ls *.txt`

do

mv $fname $fname%.*.doc;

done

fi

本回答被提问者采纳

linux批量修改目录或者文件名

参考技术A 查看/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批量修改文件名后缀?的主要内容,如果未能解决你的问题,请参考以下文章

Linux下批量修改后缀名

linux批量修改目录或者文件名

关于linux系统下批量修改文件名和后缀

关于linux系统下批量修改文件名和后缀

linux下怎么批量重命名这些文件

centos如何批量修改文件名命令?