如何用回声更改文本文件中的一行?

How to change a line in a text file with echo?

假设我们有一个名为 profile.cfg 的文件,其中包含以下内容:

user.name=Duvdevan
user.email=duvdevan@duvdevan.duv
user.web=http://duvdevan.duv
user.country=Bosnia/Herzegovina
user.age=26
user.biography="A web developer.\n\nLikes echo command..."

现在,我想更新第三行的内容,即 user.web 属性 并将其放置在与当前相同的位置,以保持上面和下面的内容不变。

到目前为止我所尝试的是:cat profile.cfg | grep user.web 我得到了那条线的值...

您可以使用 sed

轻松完成此操作
$ sed 's#user.web=.*#user.web=http://NEW_DOMAIN#' file
user.name=Duvdevan
user.email=duvdevan@duvdevan.duv
user.web=http://NEW_DOMAIN
user.country=Bosnia/Herzegovina
user.age=26
user.biography="A web developer.\n\nLikes echo command..."

使用 -i 选项对文件进行内联更改,这样就不需要重定向。