enum ReplaceTypeEnum
{
//替换单个文件,一个参数,文件路径
FILE,
//替换目录下所有文件,一个参数,目录
DIR,
//替换目录下匹配部分文件名的所有文件,3个参数,目录,匹配的文件名,是否区分大小写,1表示区分,0表示不区分
FILES,
};
enum ReplaceCommandEnum
{
//匹配替换,两个参数,匹配字符串和替换字符串,区分大小写
REPLACE,
//行部分匹配整行替换,两个参数,行部分匹配字符串,整行字符串,区分大小写
LINE,
//文件重命名,3个参数,匹配的部分文件名,替换部分文件名的字符串,匹配的部分文件名是否区分大小写,1表示区分,0表示不区分
NAME,
//行部分匹配,行内匹配替换,3个参数,部分匹配的内容,行内匹配的字符串,替换的字符串
PART,
//全文件换行符替换,一个参数,1表示把\n换成\r\n,1表示windows通用方式,0表示把\r\n换成\n,0表示linux通用方式
ENTER
};
最后两个参数表示开始替换的行号和结束替换的行号,从1开始,可以不填,前一个填0表示从第一行开始,后一个填0表示到最后一行
如果是-file重命名那个文件的名字
如果是-dir或-files重命名传入的文件夹下文件及文件夹名,文件夹名部分不会被修改
基于shell的文件内部文字替换或者文件名重命名的工具包
需积分: 0 193 浏览量
更新于2022-07-28
收藏 159KB ZIP 举报
在IT行业中,shell脚本是一种强大的自动化工具,尤其在Linux和Unix系统中广泛使用。它允许用户通过命令行界面执行一系列操作,包括文件管理和文本处理。"基于shell的文件内部文字替换或者文件名重命名的工具包"是这样一个实用的集合,它提供了便捷的方法来批量处理文件中的内容替换和文件名的重命名。
文件内部文字替换通常是通过`sed`命令实现的。`sed`(流编辑器)可以读取文件,逐行处理,并根据指定的规则进行修改。例如,如果你想要将所有包含“old_text”的行替换为“new_text”,你可以使用以下命令:
```bash
sed -i 's/old_text/new_text/g' file.txt
```
这里,`-i`选项使改动直接保存在原文件中,`s`是替换命令,`old_text`是要查找的文本,`new_text`是替换后的文本,`g`表示全局替换(替换每一行中所有的匹配项)。
文件名重命名则常用`rename`命令,但需要注意的是,不同Linux发行版可能包含不同版本的`rename`,语法也有所差异。在Perl版本的`rename`中,你可以使用正则表达式进行批量重命名,例如:
```bash
rename 's/old_pattern/new_pattern/' *.txt
```
这将把当前目录下所有`.txt`文件的文件名中符合`old_pattern`的部分替换为`new_pattern`。
在某些系统中,如果`rename`不支持正则表达式,可以使用`mv`命令配合`find`来实现类似功能:
```bash
find . -name '*old_pattern*' -exec mv {} {}_new \;
```
这会找到当前目录及其子目录下所有包含`old_pattern`的文件,并在其后添加`_new`。
这个工具包可能包含了这些功能的封装,提供了更友好的接口或额外的选项,使得文件处理更加方便。使用时,你只需按照提供的文档或帮助信息,输入相应的参数和模式,就可以批量完成复杂的文件操作,大大提高了工作效率。
在实际应用中,这样的工具包对于处理大量文件的项目尤其有用,例如代码库的迁移、日志文件的整理或者数据处理。熟练掌握这些命令和技巧,能够使你在面对文件管理问题时游刃有余。记住,安全始终是第一位的,使用前最好备份重要文件,避免因误操作导致数据丢失。
大鱼不吃鱼(wanna)
- 粉丝: 22
- 资源: 3
最新资源
- springboot232青年公寓服务平台.zip
- 汽车平顺性分析,动力学分析,3自由度,5自由度,7自由度,14自由度汽车动力学模型及控制
- springboot233大学生就业需求分析系统.zip
- springboot234基于Spring Boot的疗养院管理系统的设计与实现.zip
- springboot237毕业设计成绩管理系统的设计与实现.zip
- springboot235基于SpringBoot的房屋交易平台的设计与实现.zip
- springboot236基于springboot在线课程管理系统的设计与实现.zip
- springboot239华府便利店信息管理系统.zip
- springboot240基于Spring boot的名城小区物业管理系统.zip
- 哈里斯鹰HHO优化算法对BP的权值和阈值做优化,建立多特征输入单个因变量输出的拟合预测模型 程序内注释详细,直接替数据就可以用 程序语言为matlab 程序具体运行效果如下图所示 想要的请加好
- springboot238光影视频.zip
- springboot242基于SpringBoot的失物招领平台的设计与实现.zip
- springboot243基于SpringBoot的小学生身体素质测评管理系统设计与实现.zip
- springboot241基于SpringBoot+Vue的电商应用系统的设计与实现.zip
- com.baidu.searchbox_13.81.1.10.apk
- springboot245科研项目验收管理系统.zip