如何将包含$符号的文件中的一行替换为用户使用sed输入的值



我有一个文件,其中包含一个正在使用的变量的值,我想用用户输入的值替换它。我试过下面的

sed -i "s/^$var.*/$var = "$uval" ;/g" file

其中uval是来自用户的输入
文件中的示例行是$var=";值">
用户输入的示例值为unix,文件中所需的行为$var=";unix">
当前我正在获得Unmatch"有人能指出我做错了什么吗?

使用sed

$ sed -E 's/($var = ")[^"]*/1'"$uval"'/' input_file
$abc = "val" ; $var = "test" ;

最新更新