shell 批量修改文件名中的部分

Posted

tags:

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

1、批量创建文件

touch test_01..10_zhangsan.txt

2、for循环配合sed批量修改文件名

一定要for循环,使用echo打印文件名,如果直接sed加文件名会将文件内容改变,而不改变文件名
for f in $(ls test_*)
do
echo $f | mv $f `sed s#zhangsan#wangwu#g`
done

3、awk 字符串拼接的方法

echo test_05_zhangsan.sh | awk -F zhangsan  print "mv " $0 " " $1 "wangwu"$2
for f in $(ls test_*);do echo $f | awk -F zhangsan print "mv " $0 " " $1 "wangwu"$2;done | bash

4、rename命令

rename "zhangsan" "wangwu" test_*

以上是关于shell 批量修改文件名中的部分的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本:批量修改文件名(删除文件名中字符)

shell----批量修改多个文件中的IP地址

shell练习题:使用for循环批量修改文件扩展名

如何在shell脚本中修改添加替换指定文件中的内容

shell遍历多个文件夹并进行批量修改文件名

如何在shell脚本中修改添加替换指定文件中的内容