uniq, как быть нечувствительным к акценту? - PullRequest
0 голосов
/ 04 февраля 2020

Как сделать оболочку «uniq» нечувствительной к ударению команды?

# more test
a
à
b


# LC_ALL=fr_FR.UTF-8  uniq test
a
à
b

Ожидается:

# LC_ALL=fr_FR.UTF-8  uniq test
a
b

Примечание: следующее не в порядке, так как это изменило бы входные данные:

 cat test | sed "s/à/a/" | uniq

1 Ответ

1 голос
/ 04 февраля 2020

Это работает для вашего простого примера:

$ cat letters.txt
a
à
b
$ paste <(iconv -f utf8 -t ascii//translit letters.txt) letters.txt | sort -s -k1,1 -u | cut -f2
a
b

Для поддержки транслитерации в выходную кодировку требуется версия GNU iconv и оболочка типа bash или zsh, поддерживающая <(command) перенаправление.

...