В Linux у меня есть каталог с большим количеством файлов. Некоторые из них имеют символы не ASCII, но все они действительны в формате UTF-8 . В одной программе есть ошибка, которая не позволяет ей работать с именами, отличными от ASCII, и я должен выяснить, сколько из них затронуто. Я собирался сделать это с find
и затем сделать grep, чтобы напечатать символы не ASCII, и затем сделать a, wc -l
чтобы найти число. Это не должно быть grep; Я могу использовать любое стандартное регулярное выражение Unix , например Perl , sed , AWK и т. Д.
Однако существует ли регулярное выражение для «любого символа, который не является символом ASCII»?
/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x9F]