初始化创建测试文件:

# touch test_{1..10}.log# ls
test_1.log  test_2.log  test_3.log  test_4.log  test_5.log  test_6.log  test_7.log  test_8.log  test_9.log test_10.log

方式 一:mv

使用mv进行批量替换:

# ①、批量替换文件中“_”字符为"-"字符
# find ./ -name "*_*" | while read f; do mv $f ${f/_/-}; done# ②、批量替换文件中“test”字符为"TEST"字符
# ls | while read f; do mv $f ${f/test/TEST}; done > 引申,文件中的文本替换为:# A). 对于单个文件
# sed -i 's/string1/string2/g' example.txt
说明:将example.txt文件中的 "string1" 替换成 "string2"(如果不加-i参数,则在内存中替换; 添加-i参数,则在文件中直接替换)
# B). 对于多个文件
# $ ls|while read f; do sed -i 's/beijing/shanghai/g' $f; done

方式 二:rename

linux的rename命令有两个版本,一个是c语言版本的,一个是perl语言版本的,一般内置的都是C语言版本的

2.1 C语言版本格式:rename 原字符串 新字符串 文件名
例子:将文件名中的“test”批量替换为“TEST”

# rename test TEST test_*.log# ls
# TEST_10.log  TEST_1.log  TEST_2.log  TEST_3.log  TEST_4.log  TEST_5.log  TEST_6.log  TEST_7.log  TEST_8.log  TEST_9.log

2.2 Perl语言版本格式:rename ‘s/原字符串/新字符串/’ 文件名

perl版的rename因其支持正则表达式,使用更广泛:

例子:

字母的替换rename "s/AA/aa/" * //把文件名中的AA替换成aa
修改文件的后缀rename "s//.html//.php/" * //把.html 后缀的改成 .php后缀
批量添加文件后缀rename "s/$//.txt/" * //把所有的文件名都以txt结尾
批量删除文件名rename "s//.txt//" * //把所有以.txt结尾的文件名的.txt删掉

Linux批量替换文件名相关推荐

  1. linux批量替换文件名中的日期,rename:Linux 批量修改文件名命令,支持正则表达式...

    昨天有需要要用到 Linux 批量改文件名,网上查了下,大多都是用 shell 脚本来实现的.我看了看那几句 shell 脚本,那几个 % 和 $ 的符号实在是没搞懂,也不想花时间去研究,于是又搜了搜 ...

  2. linux批量替换文件名、文件内容字符串

    使用命令 sed -i 's/<原字符串>/<替换字符串>/g' <文件> grep -rl "<搜索字符串>" find -nam ...

  3. linux批量替换文件名中的相同字符

    rename oldstring newstring filesname 例如test文件夹下有test1.sql,test2.sql,test3.sql,要将test替换为backup [root@ ...

  4. linux 再文件夹目录下,批量替换文件名、文件内容字符串

    基本使用命令 sed -i 's/<原字符串>/<替换字符串>/g' <文件> grep -rl "<搜索字符串>" find -n ...

  5. linux 批量替换所有文件中包含的字符串

    sed -i "s/原来字符串/新字符串/g" `grep 原来字符串 -rl .`格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 ...

  6. linux 批量更换文件名,Linux下批量修改文件名的方法

    Linux下批量修改文件名的方法 在Linux环境下修改文件名可以有不同的命令方式,比如rename.mv都可以进行修改,如果用户正在了解这方面的知识,可以阅读下文了解Linux修改文件名以及批量修改 ...

  7. Linux 批量修改文件名(前缀或后缀)

    @羲凡--只为了更好的活着 Linux 批量修改文件名(前缀或后缀) 有些文件的要求前缀或后缀要一样,或者批量的将文件重命名 添加前缀: for i in `ls`; do mv -f $i `ech ...

  8. linux批量过去5小时前文件名,Linux批量修改文件名

    Linux批量修改文件名 2016.05.12 最近半个月在疯狂地做一些实验,然后需要批量地对一些文件的名字进行修改,而手工操作极其繁琐,在之前的博文中我说到我用了Cygwin软件,今天就告诉大家如何 ...

  9. linux替换大文件内容,Linux批量替换文件内容

    今天测试人员一不小心把导航的地址改错了,大约6000多个导航文件,要通过后台配置的话也很麻烦,可以通过linux命令实现对批量文件进行内容替换,但是技术经理不在,我对linux命令不熟,没办法只好硬着 ...

最新文章

  1. Git - 忽略的文件冲突解决
  2. 分布式数据库在金融应用场景中的探索与实践
  3. c语言提示错误信息,【资料】C语言错误信息中文解释
  4. windows xp下安装java8(jdk8)-转
  5. C# 判断输入的字符串是否只包含数字和英文字母
  6. java编程入门到精通课后答案,附源代码
  7. web前端课程架构梳理
  8. 使用sqlmap进行SQL注入检测
  9. python实例练习(9)图像的手绘效果
  10. flutter2.x报错解决type (RouteSettings) => Route<dynamic> is not a subtype of type (RouteSettings) => Rou
  11. 香槟分校计算机研究生专业,伊利诺伊大学香槟分校计算机科学专业各大方向介绍...
  12. Android开发人才前景分析及建议
  13. android webView加载页面时显示出全部网页内容
  14. 实战02-selenium模拟QQ邮箱登录并批量爬取指定邮件的附件——体验版
  15. (推荐)彻底理解ROC曲线和AUC值
  16. tcp ip协议 服务器和客户端区别,网络与TCP/IP协议-总结
  17. 深入剖析优惠券核心架构设计
  18. 柠萌影视再次冲刺港股:年营收持续两年下滑​ 腾讯是股东
  19. ATAC-seq分析:差异分析(10)
  20. 动作捕捉技术中分辨率和频率的重要性

热门文章

  1. Xsens MTi传感器 ROS下配置
  2. Linux命令--定时运行程序(脚本)--方法/实例
  3. Access中创建含有OLE对象列的表
  4. 应届毕业生应该如何写简历?
  5. mysql中配置general_log日志文件
  6. paulzhou的数学?TAT? 【二分打表找规律】
  7. Vue修改element-admin UI <el-table> tr 表-子项的高度 及背景颜色
  8. vue项目引入字体样式
  9. 不怕迷茫焦虑,四招让你自律
  10. 美国软件是如何最终装备在中国攻击直升机上的(四)