После того, как команда `script` выдает файл, в vim я использую `:set isprint=1-225`, чтобы удалить непечатаемые символы, но не могу сохранить файл в этом формате

После того, как команда `script` выдает файл, в vim я использую `:set isprint=1-225`, чтобы удалить непечатаемые символы, но не могу сохранить файл в этом формате

Когда я в vim выполняю эту команду, :set isprint=1-225все непечатаемые символы сжимаются/удаляются. Теперь как мне сохранить этот файл или преобразовать формат этого файла так, чтобы по умолчанию этот файл открывался в этом формате. Или если я загружу его на github, непечатаемые символы сжимаются?

Мой вопрос был отклонен на Stack Overflow за то, что он не связан с программированием или разработкой, поэтому я подумал, что попробую добавить немного больше подробностей здесь. Я не смог вместить все это в заголовок, но в принципе я могу суммировать свои дополнения этой строкой: я использую команду scriptдля регистрации моей сессии, в то время как scriptкоманда выдает файл с большим количеством «непечатаемых» символов, я могу сжать непечатаемые символы в vim с помощью :set isprint=1-225как мне сохранить файл в этом формате?

Другие варианты, о которых я знаю и которые я пробовал, — это написание функции Perl для удаления управляющего символа (лучшая альтернатива, хотя мне придется проверить, все ли непечатаемые символы были удалены), а также комбинация команд dos2unix& col -bpиз командной строки bash.

Этотвыглядело многообещающе, но прежде чем я смог попробовать его, я увидел, что в загрузках для Ubuntu указано, что он устарел. Стоит ли мне все равно попробовать установить его с помощью файла .tar.bz2?

ПСВ этом посте SO ответ Кайла Барбуразаставляет меня задуматься, есть ли способ использовать trутилиту, чтобы делать то же самое set: isprint=1-225из командной строки vim.

решение1

Установка 'isprint'параметра не изменяет файл, а влияет только на то, как Vim отображает файл. Однако вы можете запустить заменяющую команду после установки этого параметра:

:%s/[^[:print:]]//g

Затем запишите файл.

решение2

[РЕШЕНО] Поскольку я использую tmux, для своих целей я остановился на команде using tmux capture-pane -S <# off lines>.

Итак, после того, как я захватил ввод-вывод из сеанса с помощью scriptкоманды в файл xyz.txt, из приглашения терминала я могу выполнить команду cat xyz.txtдля просмотра файла без непечатаемых символов. В tmux проверьте, сколько строк в моем файле xyz.txt в режиме копирования. Наконец, из буфера команд tmux выполните команду capther-pane -S <# of lines>, а затем сохраните ее в файл zyx.txt с помощью :save-buffer zyx.txt.

Спасибо всем.

Связанный контент