如何激活 ls 命令的分页功能?

如何激活 ls 命令的分页功能?

ls与 DOS 中激活分页的命令等效的选项是什么dir /p

答案1

虽然没有直接对应的词ls,但有less实用程序,它将任何命令的输出格式化为单独的页面,可按行或页滚动:

ls -C | less

触发列显示的位置-C。使用lah作为参数 ( ls -lah) 来获取逐行显示A所有显示的文件(包括隐藏文件),以及H人类可读的文件大小。

  • 为了让颜色正确显示,则需要将参数添加--color=alwaysls,并将-R参数添加到 less*:

    ls -C --color=always | less -R

    替代文本
    这显示“ls -ah --color=always | less -R”

相反moreless可让您滚动查看输出。对于非常大的列表,它也更快一些。

管道的工作原理如下:

每个程序都有输入和输出,管道将一个程序 (ls) 的输出重定向到另一个程序 (less) 的输入。而 less 只是等待输入,然后对其进行格式化。

  • 更老式的 dos 版本是pg

    ls | pg
    

你也可以

  • 使用ls | headls | tail仅显示输出的第一部分或最后一部分
  • 用于watch "ls"保持显示屏打开,每隔几秒更新一次以观察变化
  • banner $(ls)如果您坐得离屏幕很远的话可以使用。(;

  • 如果你觉得这些都太长了,记不住,你可以建立一个别名为了它:

    使用文本编辑器打开~/.bash_aliases并添加如下内容:

    alias lsp="ls -ah --color=always | less -R"
    

    (这是每次启动新的虚拟终端时运行的脚本,您应该在那里设置所有永久别名)

    现在您只需输入lsp,或您选择的任何名称即可。

    如果你想通过进一步的论据到你的别名,我们需要定义一个函数反而:

    lsp(){ ls -ah --color=always "$@" | less -R; }
    

    一个函数,主要看起来像这样:name(){ commands; };可以接受参数,,$1等等。意味着$2$3$@“每一个论点,如果有的话”

    现在,您可以运行诸如lsp *.pylsp -C等命令。我们将参数插入到传递给 ls 的位置。如果 less 是重要命令,我们也可以插入 $*。您可以在以下位置查看 ls 的所有参数man ls(值得一读)。


*:原因是,每当你通过管道传输某些内容时,它都会检测到无法显示颜色的终端(实际上是其他程序)。“--color=always”强制 ls 忽略这一点。-R 开关使 less 重新绘制屏幕,逃离色彩适当地。

答案2

我不确定是否有一些用于分页的 ls 命令。但是,您可以使用管道和less,如下所示:

ls | less

并使用 q 退出。

答案3

尝试ls | lessls | more。第二个接近DOS版本。

答案4

可以使用以下命令进行分页。

$ ls

上述命令将以可滚动的格式打印输出。

$ ls | pager

上述命令将以分页格式打印输出。

一些额外的指示:-

  • 使用空格键转到下一页。
  • 使用 q 退出分页。

相关内容