@fedot1325

Как удалить из csv файла строку, в которой не найден имейл?

Т.е допустим есть файл, содержащий:

example@mail.com 2918241 Ivan
test@test.ru 2151221w Kolya
dasdasd sadasdasda asdasdasd
more@emails.com dasdasdasd

Соответственно отсюда надо удалить третью строку, так как в ней нет имейла.
Пробовал
sed '/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}/!d' filename.csv
не получилось
  • Вопрос задан
  • 383 просмотра
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
Можно использовать опцию SED -i, что значит внести изменения в этот же файл.
Нужно использовать опцию SED -r, чтобы включить поддержку регулярных выражений

$ sed -r '/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}/!d' test.txt
mple@mail.com 2918241 Ivan
test@test.ru 2151221w Kolya
more@emails.com dasdasdasd
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@bockor
grep -v @ filename.csv > filename1.csv
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы