VIS(1) | General Commands Manual | VIS(1) |
vis
— display
non-printable characters in a visual format
vis |
[-bcfhlMmNnoSstw ] [-e
extra] [-F
foldwidth] [file ...] |
vis
is a filter for converting
non-printable characters into a visual representation. It differs from
‘cat -v
’ in that the form is unique
and invertible. By default, all non-graphic characters except space, tab,
and newline are encoded. A detailed description of the various visual
formats is given in vis(3).
The options are as follows:
-b
cat -v
”.
(VIS_NOSLASH
)-c
VIS_CSTYLE
)-e
extra-F
foldwidthvis
to fold output lines to foldwidth
columns (default 80), like fold(1), except that a hidden
newline sequence is used, (which is removed when inverting the file back
to its original form with unvis(1)). If the last
character in the encoded file does not end in a newline, a hidden newline
sequence is appended to the output. This makes the output usable with
various editors and other utilities which typically don't work with
partial lines.-f
-F
.-h
VIS_HTTPSTYLE
)-l
\$
’, followed by the newline.-M
-S
,
-w
, -g
)
(VIS_META
)-m
VIS_MIMESTYLE
)-N
VIS_NOLOCALE
flag which encodes using
the “C” locale, removing any encoding dependencies caused by
the current locale settings specified in the environment.-n
-f
or -F
is selected. When
combined with the -f
flag,
vis
becomes like an invertible version of the
fold(1) utility. That is, the output can be unfolded by
running the output through unvis(1).-o
VIS_OCTAL
)-S
VIS_SHELL
)-s
VIS_SAFE
)-t
VIS_TAB
)-w
VIS_WHITE
)vis
supports multibyte character input.
The encoding conversion is influenced by the setting of the
LC_CTYPE
environment variable which defines the set
of characters that can be copied without encoding.
When 8-bit data is present in the input,
LC_CTYPE
must be set to the correct locale or to the
C locale. If the locales of the data and the conversion are mismatched,
multibyte character recognition may fail and encoding will be performed
byte-by-byte instead.
LC_CTYPE
Visualize characters encoding white spaces and tabs:
$ echo -e "\x10\n\t" | vis -w -t \^P\012\011\012
Same as above but using `\$' for newline followed by an actual newline:
$ echo -e "\x10\n\t" | vis -w -t -l \^P\$ \011\$
Visualize string using URI encoding:
$ echo http://www.freebsd.org | vis -h http%3a%2f%2fwww.freebsd.org%0a
The vis
command appears in
4.4BSD. Multibyte character support was added in
NetBSD 7.0 and FreeBSD
9.2.
February 18, 2021 | Mac OS X 12 |