1

我想编辑一个包含一组电子邮件 ID 的文件,以便所有域名都变得通用。

Example,
peter@yahoo.com,
julie@hotmail.com,
philip@gmail.com

to
peter@generic.com,
julie@generic.com,
philip@generic.com

我使用了以下 sed 命令,

sed '/@/,/.com/ s//generic/' filename.txt

在这里,sed 将 '@' 替换为 'generic, .com 替换为 'generic' 而不是 @ 和 .com 之间的内容

4

1 回答 1

2

采用

sed 's/@[^,]*/@generic.com/'

这将用 generic.com 替换“@”之后的所有内容,直到第一个逗号,从而修复域,并保留结尾逗号。

由于您似乎有些困惑,因此范围 ( /regex/,/otherregex/) 选择多行,而不是一行内的位置。

于 2012-06-04T21:32:23.367 回答