我试图使用awk
和gsub
替换字符串}{
与},{
。如何替换} {带},{使用gsub
我的尝试是:
cat blobs.txt | awk '{gsub(/\\}\\{/,"},{"); print}' >> blobsDone.txt
我看过的地方,像括号字符需要两个反斜杠得到匹配,但不工作。有人可以帮我吗?我疯了。
我试图使用awk
和gsub
替换字符串}{
与},{
。如何替换} {带},{使用gsub
我的尝试是:
cat blobs.txt | awk '{gsub(/\\}\\{/,"},{"); print}' >> blobsDone.txt
我看过的地方,像括号字符需要两个反斜杠得到匹配,但不工作。有人可以帮我吗?我疯了。
这将做到这一点直接
sed -i 's/}{/},{/g' blobsDone.txt
中查找}{
和},{
它是在blobsDone.txt发现任何时间替换。该文件将更新为新内容。
如果不希望文件被更新做什么,只是删除-i
参数。
柜面它},{
到}{
:
sed -i 's/},{/}{/g' blobsDone.txt
OP要求'',{' - >'} {'所以你可能想要解决这个问题];但是除了我同意之外,这里的正确工具是'sed'。 – 2013-05-06 12:38:42
这很有趣,因为我专注于问题的标题。然后在文本中他/她说的是相反的,在代码中它就像我一样。我会请他知道:)无论如何,谢谢你指出这一点! – fedorqui 2013-05-06 12:41:42
感谢您的快速回复!如果不使用cat,我该如何指定输入文件?然后,我意识到我在两个托架之间有空间。我如何匹配它? – user2343163 2013-05-06 12:41:46
awk '{gsub(/}{/,"},{"); print}' blobs.txt >> blobsDone.txt
WRT,以“我读的地方,像括号字符需要两个反斜杠” - 谷歌正则表达式,特别是正则表达式的元字符,拿到书Effective Awk Programming,Third Edition作者:Arnold Robbins,http://www.oreilly.com/catalog/awkprog3/。
无用的猫! – 2013-05-06 12:30:50
请参阅此几篇文章:http://stackoverflow.com/questions/6520816/replacing-the-char-using-awk – 2013-05-06 12:35:41
或者这一个:http://stackoverflow.com/questions/118839/gsub-partial-replace – 2013-05-06 12:36:14