有时我们在终端运行一个命令,输出太大,我们忘了把“| less”放到最后.所以我想知道当zsh中的输出太大时可以分页输出吗?

我尝试使用python和less实现此功能:

#!/usr/bin/env python3

termHeight = 25

import sys

from subprocess import Popen,PIPE

p = Popen(['unbuffer'] + sys.argv[1:],stdin=PIPE,stdout=PIPE)

lines = []

for count in range(termHeight):

line = p.stdout.readline()

if not line:

break

print(line.decode('utf8'),end='')

lines += [line]

if line:

q = Popen(['less','-Mr'],stdin=PIPE)

q.stdin.writelines(lines)

while True:

line = p.stdout.readline()

if not line:

break

q.stdin.write(line)

q.communicate()

让我们将这个python脚本保存到p.py.因此,当我们运行“python p.py some commands”之类的“python p.py ls –help”时,如果输出超过25行,则此脚本将使用less来显示输出.

问题是我无法从用户那里获得输入.这意味着此解决方案根本不适用于交互式程序.

linux+输出分页,是否可以在zsh中自动分页输出?相关推荐

  1. linux从Mac下载文件,如何将命令的输出保存到Bash中的文件(也称为Linux和macOS终端) | MOS86...

    当您在bash提示符下运行命令时,通常将该命令的输出直接打印到终端,以便您立即读取.但是bash也允许你 这可以在任何操作系统的bash中运行,从Linux和macOS到Windows 10 选项On ...

  2. linux终端打印保存到文件,Linux 终端中命令输出保存到文件中的方法

    当你在 Linux 终端中运行命令或脚本时,它会在终端中打印输出方便你立即查看. 有时你需要将输出保存到文件中以备将来参考.当然你可以在 Linux 终端中复制和粘贴,但是有更好的方法可以在 Linu ...

  3. linux中文件输出输入,linux中文件输入输出的管理

    一..输入输出的定义 1,输入:输入是指我们的键盘,鼠标等硬件在系统中录入的字符 2,输出:输出是指系统在接受到我们想要实现的功能字符后,经过进程的处理产生的字符, 输出会有两种出现,编号1为正确输出 ...

  4. 2022年linux面经必备(持续更新中)

    1.绝对路径用什么符号表示?当前目录.上层目录用什么表示?主目录用什么表示? 切换目录用什么命令? 答:绝对路径: 如/etc/init.d 当前目录和上层目录:./ -/ 主目录: ~/ 切换目录: ...

  5. Linux常见命令作用(持续更新中,欢迎提议支持)

    Linux常见命令作用(持续更新中,欢迎提议支持) 1.ifconfig 查看ip地址 2.cd 切换工作目录(跳转路径) cd 路径 切换至工作目录"路径" 下同,指令后面都可附 ...

  6. PHP中刷新输出缓冲

    http://www.cnblogs.com/mutuan/archive/2012/03/18/2404957.html PHP中刷新输出缓冲 buffer是一个内存地址空间,Linux系统默认大小 ...

  7. 在linux下,如何在C语言中使用正则表达式

    http://hi.baidu.com/d_south/blog/item/9d22a34b1fc2bcf483025c53.html 在linux下,如何在C语言中使用正则表达式(整理) 2008- ...

  8. php繁体输出,PHP输出控制功能在简繁体转换中的应用

    概要:本文对PHP的输出控制功能进行了简单介绍并对其在简繁体转化中的应用给出了具体思路和实例 一 PHP 输出控制功能介绍 PHP作为当今流行的脚本语言之一,具有编写简便,执行速度快,扩充性好等优点. ...

  9. 嵌入式C/C++开发过程中日志输出的一点思考

    在开发过程中,需要经常输出日志以协助调试和分析问题,一个良好的日志输出能够快速的帮助我们定位和分析问题.在一些linux平台嵌入式开发过程中,开发过程中对单步调试支持的并不好,它的调试很大一部分是借助 ...

最新文章

  1. Error:(49, 1) A problem occurred evaluating project ':guideview'. Could not read script 'https://r
  2. python pip 换源
  3. 互联网男士穿搭推荐-2020年新版
  4. ffmpeg 和 SDL 教程2:输出到屏幕
  5. [云炬创业基础笔记]第六章商业模式测试10
  6. 为什么先交钱后用电_适合痘痘痘印的好的护肤品,为什么要先清洁后祛痘!_新闻中心...
  7. Java集合篇:HashMap原理详解(JDK1.7及之前的版本)
  8. EJB3 学习笔记六
  9. php composer使用过程
  10. idata界面_iData手持终端常见问题集,持续更新中...
  11. python抽象类可以实例化吗,是否可以在Python中创建抽象类?
  12. iplat62----loading层添加
  13. python面试文件操作_python基础-三分钟搞定面试官爱问的【文件操作】
  14. java 计时器_【java内存】内存结构
  15. FileReader读取本地文件
  16. java基本数据类型范围
  17. 软件工程——程序流程图详解
  18. atmega128 单片机 智能 台灯 控制器 PWM ADC 时间 光敏电阻 proteus 仿真
  19. 数三角(triangle)
  20. 7-16 寻找大富翁

热门文章

  1. 自律到极致-人生才精致:第5期
  2. python opencv 检测特定颜色
  3. torch.load invalid load key, ‘\x00‘
  4. pytorch view(): argument 'size' (position 1) must be tuple of ints, not Tensor
  5. window10 android-ndk-r10d 编译ffmpeg 3.4
  6. Android NDK开发之 NEON基础介绍
  7. python 排列组合之itertools
  8. AjaxPro2在Asp.net中的基本用法
  9. 青龙羊毛——梅川衣服俩小孩(搬)
  10. 解决VMware—MAC冲突问题