假设我有一个行文件
aaa=bbb
现在我想替换为:
aaa=xxx
我可以这样做:
sed "s/aaa=bbb/aaa=xxx/g"
现在我有一个文件的几行如下:
aaa=bbb
aaa=ccc
aaa=ddd
aaa=[something else]
我怎么能替换所有这些行aaa=[东西]与aaa=xxx使用sed?
假设我有一个行文件
aaa=bbb
现在我想替换为:
aaa=xxx
我可以这样做:
sed "s/aaa=bbb/aaa=xxx/g"
现在我有一个文件的几行如下:
aaa=bbb
aaa=ccc
aaa=ddd
aaa=[something else]
我怎么能替换所有这些行aaa=[东西]与aaa=xxx使用sed?
当前回答
如果您想使用awk,那么这也可以工作
awk -F= '{$2="xxx";print}' OFS="\=" filename
其他回答
你也可以使用sed的更改行来完成:
sed -i "/aaa=/c\aaa=xxx" your_file_here
这将遍历并找到通过aaa=测试的任何行,这意味着该行包含字母aaa=。然后用aaa=xxx替换整行。您可以在测试开始时添加a ^,以确保您只得到以aaa=开头的行,但这取决于您。
如果您想使用awk,那么这也可以工作
awk -F= '{$2="xxx";print}' OFS="\=" filename
试试这个:
sed "s/aaa=.*/aaa=xxx/g"
是这样的:
sed 's/aaa=.*/aaa=xxx/'
如果你想保证aaa=在行首,可以这样做:
sed 's/^aaa=.*/aaa=xxx/'
sed -i.bak 's/\(aaa=\).*/\1"xxx"/g' your_file