标签: linux unix sed
我想找到包含self.vars['stuff']的所有文件,并将该文字替换为self.v.stuff。
self.vars['stuff']
self.v.stuff
我已尝试使用:sed -e "s/self.vars\['/self.v./" -e "s/'\]//",但这会影响恰好包含]的其他行......
sed -e "s/self.vars\['/self.v./" -e "s/'\]//"
]
有什么想法吗?
答案 0 :(得分:4)
使用反向引用。这适用于sed,假设您只使用单引号作为键:
s/self\.vars\['\([^]]\+\)'\]/self.v.\1/g