BASH: сортировка списка адресов электронной почты по доменам - PullRequest
0 голосов
/ 24 февраля 2019

Я хочу отсортировать список адресов электронной почты в файле по домену в bash.

$ cat file.txt
abc@abc.net
bbb@aaa.org
aba@aaa.com
aaa@aaa.com
ccc@abb.com
aba@abb.com
abc@abc.com

Я пробовал сортировать, но сортировка начинается только с имени пользователя.

$ sort file.txt
aaa@aaa.com
aba@aaa.com
aba@abb.com
abc@abc.com
abc@abc.net
bbb@aaa.org
ccc@abb.com

Я бы хотел отсортировать сначала домен, а затем имя пользователя.

1 Ответ

0 голосов
/ 24 февраля 2019
$ sort -t @ -k2 file
aaa@aaa.com
aba@aaa.com
bbb@aaa.org
aba@abb.com
ccc@abb.com
abc@abc.com
abc@abc.net

man sort:

-t, --field-separator=SEP
       use SEP instead of non-blank to blank transition

-k, --key=KEYDEF
       sort via a key; KEYDEF gives location and type
...