如何通过命令行“翻译”Grep查找/替换使用TextWrangler的命令

时间:2012-05-24 20:13:43

标签: replace grep textwrangler

我有一些 Grep 查找/替换命令在 TextWrangler 下运行良好,如下所示:

查找:(\“\ d +。\ d {3})+(\ d {3} + [\ s] +)

替换:\ 1s

例如,此查找/替换将替换:

TXTXTXT“123.123456 TXTXTXT 通过 TXTXTXT“123.123sTXTXTXT

现在我想通过使用egrep在命令行中执行相同的操作,但它不起作用:

egrep -e 's/(\"\d+\.\d{3})+(\d{3}+[\s]+)/\1s' -f m.txt > n.txt

egrep:正则表达式太大

有什么想法吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您当前的问题是-f选项从文件中读取正则表达式。摆脱它。当你在它的时候失去了-e。只需使用:

egrep [regexp] [file] > [another file]

然而,这会给你带来另一个问题:grep只是打印匹配,它不会做替换。你可能应该使用sed。