Это выход из моего Google CSV контактов (который содержит более 1000 контактов):Заменить несколько запятых с одной один - командой Linux
A-Tech Computers Hardware,A-Tech Computers,,Hardware,,,,,,,,,,,,,,,,,,,,Low,,,* My Contacts,,,,,,,,,Home,+38733236313,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
мне нужна команда Linux CLI заменить повторяющиеся запятые, с одной запятой, так что я получаю это:
A-Tech Computers Hardware,A-Tech Computers,Hardware,Low,* My Contacts,Home,+38733236313,
То, что я обычно делаю в Notepad ++ является Заменить «,,» с «» шесть раз.
Я попытался с:
cat googlecontacts.txt | sed -e 's/,,/,/g' -e 's/,,/,/g' -e 's/,,/,/g' -e 's/,,/,/g' -e 's/,,/,/g' -e 's/,,/,/g' > google.txt
Но это не работает ... Однако, когда я пытаюсь его на файлы меньшего размера (две строки), он работает ... :(
Помощь пожалуйста!
Будьте осторожны, так как вы можете испортить свои (в настоящее время) хорошо сформированные CSV-данные. Если у одного из ваших контактов есть дополнительная (или меньше) информация, чем другие, вы можете получить файл, который вы не можете открыть в виде файла CSV. Возможно, вам следует манипулировать данными как CSV (используйте R, Python или любой другой язык, с которым вам удобно, включая Awk). – Peque