我希望通过一个文件夹恢复,并用%{text in here}替换所有出现的%{text in here}
我检查了其他grep+sed主题,但它们通常与标准字符串替换有关;我希望保持字符串的完整性,但替换字符串周围的一些字符(基本上用%替换第一个开头大括号,并移除第二个大括号)。
发布于 2010-12-08 14:23:52
除非您出于某种原因不得不使用sed,否则Perl几乎总是更可取的,因为它的正则表达式更简洁,功能更强大:
find ... | xargs perl -i~ -pe 's/{{(.*?)}}/%{$1}/g'此外,尽管-i~创建了一个备份,但我强烈建议您在使用此备份之前备份整个树。我不能通过两次运行坏了的命令行来计算我清除工作的次数。最常见的错误是不小心使用-ne而不是-pe,这会导致从原始数据中删除所有数据。再次运行它可以用新清空的文件替换备份,只会让你感到胃里有一种下沉的感觉。
https://stackoverflow.com/questions/4388461
复制相似问题