Вот для чего нужен col -b
:
$ printf 'a\bb\n' | col -b | od -tc
0000000 b \n
0000002
$ printf 'aaa\b\b\bbb\n' | col -b | od -tc
0000000 b b a \n
0000004
Эквивалент sed
будет выглядеть следующим образом:
bs=$(printf '\b')
sed "s/^[^$bs]*/&\
\
/;:1
s/\n.\{0,1\}\(.*\n\)\([^$bs]\)/\2\
\1/;s/\(.\{0,1\}\)\n\(.*\n\)$bs/\
\1\2/;t1
s/\n//g"
Со времен настоящих телетайпных пишущих машинок (tty), последовательность x\bx
иногда встречается для представления жирного x
(x
, набранного поверх самого себя), x\b_
или _\bx
для подчеркнутого x
(x̲
), и x\b-
или -\bx
для зачеркивания (x̶
).
Другой полезной командой для работы с ними является команда colcrt
.
$ printf '_\bfo\b_o\b_ bar b\b-a\b-z\b-\n' | colcrt
foo bar baz
---
Другой вариант - преобразовать \b_
и \b-
в комбинированные символы Unicode U+0332 и U+0336:
Предполагая локаль Unicode и zsh
, ksh93
или bash
:
$ printf 'f\b_o\b_o\b_ bar b\b-a\b-z\b-\n' | sed $'s/\b_/\u0332/g;s/\b-/\u0336/g'
f̲o̲o̲ bar b̶a̶z̶
(передайте в colcrt
или col -b
для обработки x\bx
полужирного).
Выяснилось, что /etc/server.cifs — это текстовые файлы, содержащие многочисленные сведения о серверах\общих ресурсах и монтировании
/- /etc/server.cifs --timeout=400 --ghost
/- /etc/server2.cifs --timeout=400 --ghost
/- /etc/server3.cifs --timeout=400 --ghost
/- /etc/server4-vn01.cifs --timeout=400 --ghost