相关疑难解决方法(0)

ls 的输出有换行符,但显示在一行上。为什么?

我想我可能忽略了关于 shell 的一个相对基本的观点。默认情况下,ls命令的输出用换行符分隔输出,但 shell 将输出显示在一行上。

任何人都可以向我解释这一点吗?我一直假设输出只是由空格分隔,但现在我看到输出由换行符分隔,我希望输出显示在单独的行上。

例子:

cpoweradm@debian:~/lpi103-4$ ls text*
text1  text2  text3
Run Code Online (Sandbox Code Playgroud)

od显示输出由换行符分隔:

cpoweradm@debian:~/lpi103-4$ ls text* | od -c
0000000   t   e   x   t   1  \n   t   e   x   t   2  \n   t   e   x   t
0000020   3  \n
0000022
Run Code Online (Sandbox Code Playgroud)

如果存在换行符,那么为什么输出不显示为:

text1 
text2
text3
Run Code Online (Sandbox Code Playgroud)

ls bash terminal od

65
推荐指数
2
解决办法
5万
查看次数

为什么“ls | wc -l”显示当前目录中的文件数量正确?

试图计算当前目录中的文件数,我发现ls -1 | wc -l,这意味着:将文件列表(其中每个文件名都打印在新行中)发送到 wc 的输入,其中-l将计算输入的行数。这是有道理的。

我决定简单地尝试一下,ls | wc -l并且对它也给了我正确数量的文件感到非常惊讶。我想知道为什么会发生这种情况,因为ls没有选项的命令将文件名打印在一行上。

ls wc

44
推荐指数
4
解决办法
12万
查看次数

为什么`less` 不显示粗体输出?

我在 Windows 上使用 Putty 连接到我的 ubuntu 16.04 服务器上的 bash shell。

这就是我在 Putty 中的样子sudo fdisk -l

fdisk 加粗

但是当我尝试将输出通过管道传输到 时less,颜色没有显示:

fdisk 通过管道传输到 less

我试过sudo fdisk -l | less -Rand sudo fdisk -l | less -r,但输出看起来与原始输出不同。

我怎样才能让输出less看起来一样?

less colors fdisk

4
推荐指数
1
解决办法
630
查看次数

标签 统计

ls ×2

bash ×1

colors ×1

fdisk ×1

less ×1

od ×1

terminal ×1

wc ×1