LINUX.ORG.RU

История изменений

Исправление rmu, (текущая версия) :

Победа!
Методом научного тыка разобрался: перепробовал случаи с разным количеством табов, включая строки, начинающиеся с таба – оказалось, что expand конкретно с моим списком сбоит (баг, сохраняющийся в самой новой версии coreutils включительно).

У моего списка остановки рассчитываются, как если бы первый таб был восемью пробелами (т. е. ко всем последующим остановкам +8 от желаемого итогового расположения полей на строке). В остальных случаях достаточно указать остановки, подразумевая уже произведённые замены в строке.

Пример моей строки (из списка ip адресов, составленного модулем xt_recent; места табов в исходной строке отмечены {\t}):

{\t}185.176.27.2{\t}ttl: 243{\t}last_seen: 13885884858 oldest_pkt: 1 13885884858

Поэтому для выравнивания полей использую команду expand -t 1,31,40.

Надеюсь, решение пригодится тому, кто столкнётся с подобным багом.

Исходная версия rmu, :

Победа!
Методом научного тыка разобрался: перепробовал случаи с разным количеством табов, включая строки, начинающиеся с таба – оказалось, что expand конкретно с моим списком сбоит (баг, сохраняющийся в самой новой версии coreutils включительно).

У моего списка остановки рассчитываются, как если бы первый таб был восемью пробелами (т. е. ко всем последующим остановкам +8 от желаемого итогового расположения полей на строке). В остальных случаях достаточно указать остановки, подразумевая уже произведённые замены в строке.

Пример моей строки (из списка ip адресов, составленного модулем xt_recent; места табов в исходной строке отмечены {\t}):

{\t}185.176.27.2{\t}ttl: 243{\t}last_seen: 13885884858 oldest_pkt: 1 13885884858

Надеюсь, решение пригодится тому, кто столкнётся с подобным багом.