我有一个包含以下格式的几行文件:
#ABC-1X1X-XXX-8000-2AB-XXXX-3000 $(var1) $(var2) $(var3) $(var4)
在查找ABC-1X1X-XXX-8000-2AB-XXXX-3000
后,我需要删除#
并更新文件。运行一些其他命令并将其恢复为原始命令。
我在下面尝试了,但是这样就删除了#
,但也删除了我的所有其他变量,该行的其余部分。我只希望从该行删除#
。
look_for=ABC-1X1X-XXX-8000-2AB-XXXX-3000
found=($(grep $look_for $file))
sed -i "/$found/c \\$look_for" $file
输出:
ABC-1X1X-XXX-8000-2AB-XXXX-3000 (missing all other variable)
答案 0 :(得分:0)
我试过这个并且有效:
sed -i "s/$found/$look_for/g" "$file"