формат вывода команды Unix «сценарий»: удалить пробелы, перевод строки и удаленные символы?

Я пытаюсь использовать команду script для записи интерактивного сеанса оболочки, чтобы я мог использовать ее для подготовки документации .

согласно странице руководства:

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

Я наивный пользователь (обычно меня не кричат ​​на страницах руководства, это довольно интересно!), И я хотел бы обработать вывод таким образом, чтобы переводы строки, удаленные символы и т. д. удаляются.

пример, я запускаю сеанс скрипт :

stew:~> script -f scriptsession.log
Script started, file is scriptsession.log
stew:~> date
Mon Aug 22 15:00:37 EDT 2011
stew:~> #extra chars: that
stew:~> exit
exit
Script done, file is scriptsession.log

затем использую cat для чтения журнала сеанса:

stew:~> cat scriptsession.log
Script started on Mon 22 Aug 2011 03:00:35 PM EDT
stew:~> date
Mon Aug 22 15:00:37 EDT 2011
stew:~> #extra chars: that
stew:~> exit
exit

Script done on Mon 22 Aug 2011 03:01:01 PM EDT

но когда я использую less , я вижу доказательства нежелательных символов, которые невидимы с помощью cat :

stew:~> less scriptsession.log
Script started on Mon 22 Aug 2011 03:00:35 PM EDT
stew:~> date
Mon Aug 22 15:00:37 EDT 2011
stew:~> #extra chars: thiESC[ESC[ESC[ESC[Kthat
stew:~> exit
exit

Script done on Mon 22 Aug 2011 03:01:01 PM EDT
scriptsession.log lines 1-8/8 (END)

когда я использую cat , я понимаю, что это не так » t удалить невидимые символы, он просто не представляет их визуально, как это делает less - поэтому, если я передаю вывод cat в файл, он все равно будет содержать нежелательные символы.

формат вывода, который мне нужен, является копией того, что отображает cat . спасибо!

(извиняюсь, если это дубликат, поиск "формат вывода сценария unix" возвращает много шумных результатов в отношении рассматриваемого вопроса!)

8
задан Stew 22 August 2011 в 19:12
поделиться