Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UNIX:如果管道传输到更少,则输出奇怪_Unix_Command - Fatal编程技术网

UNIX:如果管道传输到更少,则输出奇怪

UNIX:如果管道传输到更少,则输出奇怪,unix,command,Unix,Command,如果执行ls命令时管道长度小于,则会得到奇怪的输出 ESC[00mESC[00mfile1.ccESC[00m ESC[00file2.ccESC[00m ESC[00file3.ccESC[00m (指介于两者之间的ESC字符串) 如果没有ls,输出为: file1.cc file2.cc file3.cc 如何更正此问题?我猜您通过别名、函数或ls\u COLORS环境变量将--color=always选项设置为ls,并且ls正在向非终端发送颜色指令(即,您的管道到less)

如果执行ls命令时管道长度小于,则会得到奇怪的输出

ESC[00mESC[00mfile1.ccESC[00m
ESC[00file2.ccESC[00m
ESC[00file3.ccESC[00m
(指介于两者之间的ESC字符串)

如果没有ls,输出为:

file1.cc    file2.cc    file3.cc

如何更正此问题?

我猜您通过别名、函数或
ls\u COLORS
环境变量将
--color=always
选项设置为
ls
,并且
ls
正在向非终端发送颜色指令(即,您的管道到
less
).

您看到的是用于设置颜色的ANSI转义序列。运行
ls--color=no
使用
less-R
或将
less
环境变量设置为
-R

您需要使用
less-R

减少输出原始控制字符,大写选项-R避免了一些断行问题。