2016-12-05 2 views
0

У меня много огромных файлов CSV, некоторые из которых содержат плохо кодированные символы: в vi я вижу такие вещи, как «< 8f>» или «< 8e>», например , Во-первых, я хотел найти и заменить (:% s) все символы, но это будет очень долгий процесс, потому что я буду делать это каждый раз, когда мне приходится обрабатывать файл, и я не всегда уверен, символы здесь. Можно ли обнаружить такие символы, чтобы я мог извлекать строки, содержащие плохо кодированные символы? Простая команда может существовать, беря файл для аргумента и создавая файл, содержащий только строки с проблемой.Поиск закодированных символов в файле на Linux

Я не знаю, хорошо ли я мне объясняю ... Заранее спасибо!

+2

Пожалуйста, разместите свой код. Но сначала см. [Как заполнить минимальные, полные и Подтверждаемый пример] (/ help/mcve). –

+0

Я не знаю, что еще сказать. У меня нет кода, это вопрос моего вопроса. Я могу привести пример того, что у меня есть, когда я использую "VI" команда: «vi file.csv» дает мне это: 'NOMS PR <8f> NOMS', и я хотел бы обнаружить это <8f>. – djcaesar9114

ответ

0

Вы можете использовать: г/символ/р [ВИМ], чтобы напечатать все строки в данном файле, или баш утилиту Grep:

grep -lr 'char1\|char2\|char2' . 

будет выводить все файлы в директории, содержащей какой-либо из перечисленные вами символы (-r делает его рекурсивным, а -l перечисляет только имена файлов, а не все совпадения строк.

+0

Спасибо F Biggs за то, что нашли время ответить. Я нашел что-то еще, что я опубликую через несколько часов в своем github и разместил ссылку здесь. – djcaesar9114

Смежные вопросы