У меня есть .txt файл, содержащий координаты точек в формате «x y». Они представляют собой облако точек на плоскости. Моя идея состояла в том, чтобы уменьшить «плотность» облака, уменьшив количество очков на половину. Я использую linux, поэтому для этого я решил удалить половину строк с помощью sed, но только четную или нечетную или в любом случае одну строку на две. Для наглядности я вывешу пример:
Как уменьшить количество строк на половину с помощью sed
Перед
435.225 108.891
435.212 108.894 <-- to delete
435.225 108.894
435.238 108.894 <-- to delete
435.3 108.894
435.212 108.897 <-- to delete
435.238 108.897
435.288 108.897 <-- to delete
После
435.225 108.891
435.225 108.894
435.3 108.894
435.238 108.897
+1. Я не знал о примере «sed», о котором вы упоминали. вы могли бы предоставить любую документацию, которая объяснит поведение «1 ~ 2». Благодарю. – slayedbylucifer
Несомненно, @slayedbylucifer, только что обновленный с некоторыми ссылками от 'man sed'. – fedorqui
@slayedbylucifer BTW, '~' является расширением GNU, поэтому команда может не дать ожидаемых результатов на OSX. Вопрос [связанный] (http://stackoverflow.com/questions/2560411/how-to-remove-every-other-line-with-sed) содержит больше вариантов того, как этого достичь. – devnull