sed 问题。我做错了什么?
我正在尝试使用 sed 将 a[ 'xxx' ] 替换为 [ xxx ]:
sed -e 's/a[ '\(.*\)' ]/a[ \1 ]/' ./Test
sed: -e expression #1, char xx: invalid reference \1 on `s' command's RHS
我做错了什么?
谢谢!
I am trying to replace a[ 'xxx' ] by a[ xxx ] using sed:
sed -e 's/a[ '\(.*\)' ]/a[ \1 ]/' ./Test
sed: -e expression #1, char xx: invalid reference \1 on `s' command's RHS
What am I doing wrong?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要像这样转义
[
和]
:You need to escape the
[
and]
like this:简单地删除单引号字符怎么样?为了避免混淆
shell,在表达式两边使用双引号:
a['xxx']
a[xxx]
Greg Johnson
How about simply deleting the single-quote characters? To avoid confusing the
shell, use double-quotes around the expression:
a['xxx']
a[xxx]
Greg Johnson
使用
tr
删除单引号怎么样?What about using
tr
to delete the single quotes?