shell脚本目录下所有文件中关键词替换方法

server/2024/12/18 7:03:44/
#!/bin/bash# 定义当前文件夹路径
FOLDER_PATH="."  # 当前目录# 旧关键词和新关键词
OLD_KEYWORD="track_wpa_report"
NEW_KEYWORD="//track_wpa_report"# 遍历当前目录下的所有文件,并替换关键词
# 使用#作为分隔符,避免斜杠带来的混淆
find "$FOLDER_PATH" -type f -exec sed -i "s#$OLD_KEYWORD#$NEW_KEYWORD#g" {} \;echo "关键词替换完成"

使用说明:
保存脚本:将上述脚本保存到一个文件中,例如命名为 replace_keyword.sh。
赋予执行权限:在终端中运行 chmod +x replace_keyword.sh 来使脚本可执行。
执行脚本:在终端中运行 ./replace_keyword.sh 来执行脚本。
注意事项:
这个脚本会递归地查找当前目录下的所有文件,并在每个文件中替换关键词。
如果你的文件包含多种编程语言,确保这种替换不会破坏文件的语法。例如,如果track_wpa_report出现在注释中,这种替换可能会影响文件的可读性。
在执行脚本之前,最好备份你的文件,以防替换出错。
如果你使用的是macOS系统,sed -i命令可能需要一个扩展名参数,例如
sed -i '' "s#$OLD_KEYWORD#$NEW_KEYWORD#g" {} \;
这个脚本应该能够在大多数Linux和macOS系统上运行,而不会遇到之前的错误。如果你在macOS上运行,确保sed命令的-i选项后面跟的是空字符串。


http://www.ppmy.cn/server/151111.html

相关文章

Windos中解决redis-server.exe闪退问题

一、闪退原因 (一)数据状态异常 数据不一致 在 Redis 运行过程中,如果发生意外情况,如突然断电、系统崩溃或者不正确的操作,可能会导致数据在内存中的存储状态不一致。例如,Redis 使用多种数据结构&#x…

数据结构—图

目录 一、图的定义 二、图的基本概念和术语 2.1有向图 2.2无向图 2.3简单图 2.4多重图 2.5完全图 2.6子图 2.7连通、连通图和连通分量 2.8强连通图、强联通分量 2.9生成树,生成森林 2.10顶点的度、入度和出度 2.11边的权和网 2.12稠密图、稀疏图 2.1…

【Ubuntu】截图软件flameshort

sudo apt install flameshort 安装Flameshot截图工具 配置快捷键 进入系统设置settings,找到Keyboard下的Keyboard Shortcuts快捷键设置面板,按步骤进行设置。

在线预约陪诊小程序

一、前言 随着社会老龄化加剧以及人们健康意识的提高,就医过程中的陪伴需求日益增长。许多患者在面对复杂的医院环境、繁琐的就医流程时,需要有人协助挂号、候诊、取药等,而家属可能因工作繁忙无法全程陪同。同时,异地就医的患者更…

Mysql和MariaDB什么关系

MySQL和MariaDB的关系非常密切,可以用“父子”或者“分支”来形容。简单来说,MariaDB是MySQL的一个分支,由MySQL的创始人之一Michael Widenius(也被称为Monty)在2009年创建。 以下是它们之间关系的详细说明&#xff1…

【arm】国民N32G435通用定时器霍尔配置,双边沿输入捕获配置

项目场景: 无刷电机FOC控制,配置通用定时器TIM4为霍尔输入检测。 控制平台,国民N32G435CBL7。 问题描述 端口配置: /* Hall port configuration. */GPIO_InitStructure.Pin GPIO_PIN_6 | GPIO_PIN_7 | GPIO_PIN_8…

Maven 统一版本:项目依赖管理的智慧之选

Maven 统一版本:项目依赖管理的智慧之选 在 Java 开发的浩瀚星空中,Maven 犹如一颗璀璨的导航星,引领着我们穿越依赖管理的浩瀚宇宙。而其中的“统一版本”概念,就像是为这趟旅程制定的一份精准地图,让我们的项目之路…

快慢指针.原地删除数组重复项

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 class Solution { public:in…