使用shell脚本进行文本处理

时间:2015-03-20 05:55:24

标签: shell

我是shell脚本的新手。 我有一个文本文件,包含一些文本和一些电子邮件ID。现在我必须编写一个shell脚本来查找所有电子邮件ID。 请帮帮我。

1 个答案:

答案 0 :(得分:0)

这是一种快速而肮脏的方法来读取文件中的所有电子邮件地址,然后将它们打印到stdout:

#!/bin/bash

ifn=${1:-emfile.txt}  # the first arguments is the filename

# test that it is readable or exit
[ -r "$ifn" ] || {
    printf "error: file open failed '%s'\n" "$ifn"
    exit 1
}

# parse all emails in file and write to stdout
grep -i -o '[A-Z0-9._%+-]\+@[A-Z0-9.-]\+\.[A-Z]\{2,4\}' <"$ifn"

exit 0

<强>输入

$ cat emailfile.txt
jon@mickeys.com
Jane@joestonight.org
some@more.com
just some text

<强>输出

$ bash parseemail.sh emailfile.txt
jon@mickeys.com
Jane@joestonight.org
some@more.com