Вы работаете в Windows, я не уверен, что LPT: может быть сделан для понимания старых последовательностей команд в стиле «ANSI.SYS» или подобных «escape-последовательностей» в тексте / документах, которые будут напечатаны.
Кроме того: Вы не сказали, являются ли вы документами TEXT-FILE или WORD.
Вот пример того, как использовать sed
чтобы "0d" и "0a" (CR и LF) выделялись в чистом тексте в оболочке Linux bash.
Примечание: od
с указанными параметрами печатает значения байтов в шестнадцатеричном виде и их представление в ascii
.
$ cat firstfile
1. The quick brown fox jumped over the lazy dog.
$ od -t x1z -w24 firstfile | sed -re 's/(0a)/\x1b[1m\1\x1b[m/g;s/(0d)/\x1b[1m\1\x1b[m/g'
0000000 31 2e 20 54 68 65 20 71 75 69 63 6b 20 62 72 6f 77 6e 20 66 6f 78 20 6a >1. The quick brown fox j<
0000030 75 6d 70 65 64 20 6f 76 65 72 20 74 68 65 20 6c 61 7a 79 20 64 6f 67 2e >umped over the lazy dog.<
0000060 0a >.<
0000061
примечание: последний "0а" должен быть жирным шрифтом, здесь этого не происходит, кажется невозможным.
\x1b[1m
и \x1b[m
которые вы видите встроенными, являются последовательностями, необходимыми для того, чтобы сделать терминал Ubuntu жирным шрифтом, а затем выключить его. Они поступают из базы данных terminfo и могут быть сгенерированы более широко с помощью tput bold
и tput sgr 0
как показано в:
$ tput bold | od -t x1z -w24
0000000 1b 5b 31 6d >.[1m<
0000004
$ tput sgr 0 | od -t x1z -w24
0000000 1b 28 42 1b 5b 30 6d >.(B.[0m<
0000007