如何使用 sed 将文本替换为“:”
How to replace a text with ":" using sed
我正在尝试借助 sed 替换文本,但我真的很困惑如何找到失败的原因。
Main file
===========
user@shell>cat test
new=21:58:22
old=09:58:22
echo $new
echo $old
user@shell>sed -i 's/$old/$new/g' yoo
user@shell>
user@shell>
desired output
==============
user@shell>cat yoo
09:58:22
09:58:22
09:58:2209:58:22
09:58:2209:58:22
asdasd
user@shell>
在此之后,我假设我将在文件 yoo 中获取新值,但没有反映任何变化。
您需要像这样使用双引号扩展变量,
sed -i "s/$old/$new/g" yoo
我正在尝试借助 sed 替换文本,但我真的很困惑如何找到失败的原因。
Main file
===========
user@shell>cat test
new=21:58:22
old=09:58:22
echo $new
echo $old
user@shell>sed -i 's/$old/$new/g' yoo
user@shell>
user@shell>
desired output
==============
user@shell>cat yoo
09:58:22
09:58:22
09:58:2209:58:22
09:58:2209:58:22
asdasd
user@shell>
在此之后,我假设我将在文件 yoo 中获取新值,但没有反映任何变化。
您需要像这样使用双引号扩展变量,
sed -i "s/$old/$new/g" yoo