gpt4 book ai didi

linux - 在linux中使用sed命令更改变量值

转载 作者:太空宇宙 更新时间:2023-11-04 05:16:00 26 4
gpt4 key购买 nike

我在 Linux 中找到了一个 sed 命令,它可以将以下变量值替换为 .env 文件中的 root

DB_USERNAME=123
DB_ABC_USERNAME=abc
DB_ABC_DEF_USERNAME=abcdef

DB_USERNAME=root
DB_ABC_USERNAME=root
DB_ABC_DEF_USERNAME=root

文件中有另一个变量,例如 DB_HOST=xxx,我们不能使用 sed 更改所有变量

最佳答案

这个简单的 sed 将为您提供同样的帮助。

sed 's/=.*/=root/g'  Input_file

如果您想将输出保存到相同的 Input_file 中,请在上面的代码中使用 sed -i 选项。

编辑:如果您想查找仅搜索和替换的特定字符串值,那么以下内容可能会帮助您。

sed -E '/(DB_USERNAME)|(DB_ABC_USERNAME)|(DB_ABC_DEF_USERNAME)/s/=.*/=root/g'  Input_file

编辑2:如果您正在寻找仅要更改的特定字符串,那么以下内容可能会帮助您。

awk '/DB_USERNAME/||/DB_ABC_USERNAME/||/DB_ABC_DEF_USERNAME/{sub(/=.*/,"=root")} 1'  Input_file

在上面的代码中添加 > temp_file && mv temp_file Input_file 以防您想将输出保存在同一个 Input_file 本身中。

关于linux - 在linux中使用sed命令更改变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49316418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com