从文件中每行的开头删除电子邮件字符串

时间:2015-05-28 19:05:39

标签: linux shell command-line-interface cut

我有一个格式如下的文件

email1@email.com some string with no set width
email2@email.com another string
email3@email.com yet another string!!
areallylongemail@email.com shortstring

我想要做的是运行一个bash命令来获取此文件并从EACH行的开头删除电子邮件+空间并将其输出到另一个文件。输出文件应为

some string with no set width
another string
yet another string!!
shortstring

到目前为止,我有sed 's/^\S+\s//' test_input.txt > test_output.txt但似乎没有工作......

2 个答案:

答案 0 :(得分:1)

您可以使用function resize( el, height ) { if (height != 80) { el.animate({ height: 80 },{ duration: 5000, step: function( curheight ) { $('#output').text((curheight / height) * 100 + '%'); } }); } }

sed

gnu sed将使用此:

sed 's/^[^[:blank:]@]\+@[^[:blank:]]\+[[:blank:]]*//' file > file.out
some string with no set width
another string
yet another string!!
shortstring

答案 1 :(得分:1)

如果只有一个空格将电子邮件地址与该行的其余部分分开,那么您可以使用cut命令,告诉它使用该空格作为字段分隔符,并拥有它输出以第二个字段开头的所有字段。

cut -d' ' -f2- < file > file.out