首页 > 解决方案 > 如何使用 sed 从变量中替换特定字符串?

问题描述

我只是想用一个变量的值替换一个特定的字符串,并使用 sed 用替换的字符串更新该变量

例如。 spath="$(which git)"

现在我需要更新变量spath的值,方法是将字符串“git”替换为字符串“c”,在 which 表达式已评估之后。假设如果哪个 git最初评估为/usr/bin/git,那么spath应该在 sed 字符串替换后最终评估为/usr/bin/c

标签: regexlinuxbashsed

解决方案


您可以在不使用外部实用程序(例如sed使用内置bash字符串操作功能)的情况下获得相同的结果。

$ spath="/usr/bin/git"
$ spath=${spath/%git/c}
$ echo $spath
/usr/bin/c
$

推荐阅读