Как получить все email-ы из текста одной командой
Столкнулся сегодня с задачей: есть большой текстовый файл, нужно достать из него все уникальные адреса электронной почты, отсортировать и записать результат в файл. Как выяснилось, cделать все можно 1 командой.
grep -E -o "\b[a-zA-Z0-9.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9.-]+\b" file.txt | sort -n | uniq > emails.txt
Команда grep достает из файла все email-ы, все сортируется, оставляются только уникальные значения после чего результат записывается в файл.
Если все находится не в одном большом файле, а в нескольких мелких, то склеить все файлы в 1 можно так:
cat file1 file2 file3 > file4
Люблю Linux :)
Добавить комментарий