我想,以取代含支架与另一指令递归中的所有文件的特定指令。
例如,
mov r1, [r1, r2]
同
sub [r8, r9], r10
当我使用
sed -i.bak "s/mov r1, [r1, r2]/sub [r8, r9], r10/g" file.S
这是行不通的。
我怎样才能做到这一点?
我想,以取代含支架与另一指令递归中的所有文件的特定指令。
例如,
mov r1, [r1, r2]
同
sub [r8, r9], r10
当我使用
sed -i.bak "s/mov r1, [r1, r2]/sub [r8, r9], r10/g" file.S
这是行不通的。
我怎样才能做到这一点?
两件事情。
从而:
's/mov r1, \[r1, r2\]/sub [r8, r9], r10/g'
虽然工作了正确的脚本,你可以直接跳过内联编辑,也许。 像这样:
sed 's/mov r1, \[r1, r2\]/sub [r8, r9], r10/g' file.S
与尝试转义括号's/mov r1, \[r1, r2\]/sub \[r8, r9\], r10/g'
。
摆脱括号 - [] - 在sed的替换命令将你期望的方式处理您的文件。 这里是你的命令改写括号转义:
sed 's/mov r1, \[r1, r2\]/sub [r8, r9], r10/g' file.S