Описание тега chinese-checkers
ТЛ;ДР мне нужно выровнять столбцы записей в fstab, игнорируя замечания:
в /dev/фу /фу в ext4 по умолчанию 0 2
строка комментария # 1
/разработки/бар /бар в ext4 по умолчанию 0 2
строка комментария # 2
Идентификатор UUID=1234567890 /баз системы ext4 по умолчанию 0 2
должно стать
в /dev/фу /фу в ext4 по умолчанию 0 2
строка комментария # 1
/разработки/бар /бар в ext4 по умолчанию 0 2
строка комментария # 2
Идентификатор UUID=1234567890 /баз системы ext4 по умолчанию 0 2
в идеале, один нападающих команды.
</номер>
Мой файл fstab
состоит из большого блока документации в комментарий строки, заканчивающиеся на поле описания и, наконец, записи. Есть строки комментария перемежаются в разделе Запись.
# файл /etc/fstab: статическая сведения о файловой системе.
#
# Используйте 'blkid' для печати универсальный уникальный идентификатор
устройство#; это может использоваться с UUID= как более надежный способ присвоения имен устройствам
# это работает, даже если диски будут добавлены и удалены. См. файл fstab(5).
#
# <файловая система> <точка монтирования> <тип> <параметры> <дамп> <пропуск>
записи в таблицу # начать ...
Я бы хотел, чтобы выровнять столбцы в строки записи через колонки -Т
команда или эквивалент, но хочу, чтобы игнорировать комментарии. Если не игнорировать строки комментария, даже они будут подвергаться выравниванию. При редактировании файла в Vim, я могу визуально выберите строки из первой записи и далее запустить '<,'>
!команда grep '^[^\#]' | колонки -т
, но команда grep отфильтровать комментировать линий и, как следствие, они не будут присутствовать в выходном, который заменяет выделение в Vim. Я не могу запустить колонку команду на каждой соответствующей строки по отдельности, так как колонка
не работает, что путь.
Есть простая команда, которая решает эту задачу? Он не должен быть достижим в Vim, как я могу просто делегировать его на внешнюю команду изнутри.