温馨提示×

centos什么命令替换文本字符

小樊
60
2026-09-06 09:45:44
栏目: 智能运维

在 CentOS(以及其它 Linux 发行版)中,常用的替换文本字符的命令有下面几种:


1️⃣ sed(最常用,适合替换文件/管道内容)

替换文件中的文本(不直接修改原文件)

sed 's/旧字符/新字符/' 文件名

直接修改文件(加 -i)

sed -i 's/旧字符/新字符/' 文件名

全局替换(一行中所有匹配)

sed -i 's/旧字符/新字符/g' 文件名

示例:

sed -i 's/localhost/127.0.0.1/g' test.txt

2️⃣ tr(替换单个字符,不修改文件)

cat 文件名 | tr '旧字符' '新字符'

示例:

cat test.txt | tr 'a' 'A'

⚠️ tr 只能替换字符,不能替换字符串。


3️⃣ awk(适合复杂文本处理)

awk '{gsub(/旧字符/,"新字符"); print}' 文件名

示例:

awk '{gsub(/foo/,"bar"); print}' test.txt

4️⃣ vim(交互式替换)

vim 文件名

进入后输入:

:%s/旧字符/新字符/g

5️⃣ perl(强大,支持正则)

perl -pi -e 's/旧字符/新字符/g' 文件名

✅ 推荐使用场景

场景 推荐命令
批量替换文件内容 sed -i
管道中替换 sed / tr
复杂逻辑 awk / perl
手动编辑 vim

如果你有具体替换示例(如替换 IP、端口、配置项),我可以给你精确命令。

0 踩