Linux shell脚本批量替换文件内容(Linux替换文件内容)

如何使用Shell脚本批量替换文件内容,下面是不念写的脚本,以供您参考。

在本示例中,我们将批量将文件内容中的“old_text”替换为“new_text”。

图片[1]-Linux shell脚本批量替换文件内容(Linux替换文件内容)-不念博客

编写Shell脚本(例如:replace_text.sh):

#!/bin/bash

# 指定目标目录,如果需要在当前目录下操作,可以使用 "."
target_directory="/path/to/your/directory"

# 指定需要替换的文本
old_text="old_text"
new_text="new_text"

# 指定文件扩展名,例如 .txt, .html 等
file_extension=".txt"

# 遍历目标目录下的文件
for file in "$target_directory"/*"$file_extension"; do
  # 使用sed替换文件内容,注意,这将创建一个临时文件
  sed "s/$old_text/$new_text/g" "$file" > "${file}.tmp"

  # 替换原始文件
  mv "${file}.tmp" "$file"

  # 输出已修改内容的文件名
  echo "已修改文件内容:$file"
done

赋予脚本执行权限:

chmod +x replace_text.sh

运行脚本:

./replace_text.sh

这将修改指定目录(target_directory变量)下的文件内容,将文件中的“old_text”替换为“new_text”。

© 版权声明
THE END