More (命令)

more
Unix/Unix-like平台上more命令的输出
開發者Daniel Halbert
操作系统跨平台
类型系统工具
许可协议GPL或其它

more是一种用于命令行分页显示的工具。相比less而言,其较为原始,功能有限。

常见版本

  • Unix/Unix-like操作系统
  • OS/2
  • DOS
  • Windows

历史

more的原作者是Daniel Halbert,并由Eric Shienbrood和Geoff Peck扩充功能[1]
Daniel Halbert在MIT就读本科时,他学习的操作系统是ITS。ITS自带一个分页工具,当显示的内容满一屏幕后,它会在屏幕的底部添加提示“--more--”,用户按下空格键就能继续显示下一页的内容。
Daniel Halbert考入加利福尼亚大学伯克利分校就读研究生课程时,学习的是VAX Unix系统,它使用的分页器是cr3。当一页文本已经显示完成后,cr3用系统响铃的方式提示用户。这个做法有几个不利,一来,很多终端是“哑终端”,没有扬声器;二来,装满大量终端的机房内哔声此起彼伏,用户也不胜其烦。
于是Daniel Halbert改进了cr3,并将新工具命名为“more”。这是第一个采用完整英文单词命名的Unix命令。随后发行的BSD 3.0首次包含了more。此后,它成为所有的Unix及Unix-like操作系统的标准工具。

用法

Unix/Unix-like操作系统[2]

输入

  • 文件名作为参数直接输入:如,more ~/维基百科.txt
  • 用管道符输入:如,more < ~/维基百科.txt;或者,cat ~/维基百科.txt | more。

参数

  • -数字 指定一页显示的行数。
  • -d 将在“--More--(已读百分比)”后显示提示信息“[Press space to continue, 'q' to quit.]”;当用户按下无效按键时,出现提示信息“[Press 'h' for instructions.]”。
  • -l 忽略换页符(^L)。没有此参数时,more遇到含有^L的行将自动暂停显示。
  • -f 按原文件实际的行数计算,而非以显示在屏幕上的行数计算。(文件中的一行文本可能非常长,占用数个屏幕行,此时开启本选项,将无法很好地完成分页功能)。
  • -p 以清屏代替滚屏。
  • -c 类似于-p。
  • -s 将数个连续空行显示为一个空行。
  • -u 取消下划线。
  • +/ 在显示之前,先搜索指定字符串。
  • +数字 在指定的行数开始显示。

键盘命令

  • h键或?键 简要显示键盘命令的作用。
  • 空格键 显示k行[註 1]。默认值为屏幕行数。
  • z键 显示k行。默认值为屏幕行数。如果定义了新的k值,k值将成为新的默认值。
  • 回车键 显示k行。默认值为1。如果定义了新的k值,k值将成为新的默认值。
  • d键或Ctrl+D键 滚动k行。默认值为当前滚动的行数。如果定义了新的k值,k值将成为新的默认值。
  • q键 退出
  • s键 向下跳过k个逻辑行。默认值为1。
  • f键 向下跳过k屏。默认值为1。
  • b键或Ctrl+B键 往回k屏幕。默认值为1。仅对文件有效,对管道无效。
  • =键 显示当前行号。
  • /键+正则表达式 搜索第k次出现的正则表达式。默认值为1。
  • n键 搜索第k次出现的最后用过的正则表达式。默认值为1。
  • !键+命令或:键+!键+命令 在一个子shell中启动指定命令。
  • v键 在当前行启动编辑器。编辑器由环境变量决定,优先权为VISUAL>EDITOR,如果VISUAL和EDITOR均未定义,则启动vi。
  • Ctrl+L键 重新绘制屏幕。
  • :键+n键 跳到第k个文件。默认值为1。
  • :键+p键 跳到第k个之前的文件。默认值为1。
  • :键+f键 显示当前的文件名及行号。
  • .键 重复前一个命令。
  1. ^ 可以在部分命令键前先按数字键,将数值传递给命令,此数值就称为k

环境变量

  • MORE 设定默认参数。
  • SHELL 当前正在使用的shell。
  • TERM 指定终端类型,以便获得屏幕的规格。

Windows操作系统[3]

格式

  • more /E [/C] [/P] [/S] [/Tn] [+n] <文件1>[<空格键>文件2...]
  • more [/E [/C] [/P] [/S] [/Tn] +n < [驱动器:][路径]文件名
  • 命令 | more [/E [/C] [/P] [/S] [/Tn] +n

参数

  • /E 启用扩展功能(见下)。
  • /C 显示页面前先清除屏幕。
  • /P 扩展换页符。
  • /S 将多个空白行缩成一行。
  • /Tn 将跳格键扩展成n个空格(默认值为8)。
  • +n 从第 n 行开始显示第一个文件

备注,上述参数,除+n外,可以出现在环境变量MORE中。

扩展功能

如果扩展的功能已经启用,在“-- More --”提示处会接受下列键盘命令:

  • P n 显示下n行。
  • S n 略过下n行。
  • F 显示下个文件。
  • Q 退出。
  • = 显示行号。
  • ? 显示帮助行。
  • <space> 显示下一页。
  • <return> 显示下一行。

参考文献

  1. ^ 存档副本. [2017-09-05]. (原始内容存档于2009-04-13). 
  2. ^ more的manpage。. [2009-10-23]. (原始内容存档于2005-11-06). 
  3. ^ [Microsoft Windows XP SP2命令行more /?的输出]
文件系統
  • cat
  • cd
  • chmod
  • chown
  • chgrp
  • cksum
  • cmp
  • cp
  • dd
  • du
  • df
  • file
  • fsck
  • fuser
  • ln
  • ls
  • mkdir
  • mount
  • mv
  • pax英语pax (Unix)
  • pwd
  • rm
  • rmdir
  • size
  • split
  • stat
  • tee
  • touch
  • type英语type (Unix)
  • umask英语umask
程序
  • at
  • bg
  • chroot
  • cron
  • fg
  • kill
  • killall英语killall
  • nice
  • pgrep
  • pkill英语pkill
  • ps
  • pstree英语pstree
  • time
  • top
用户环境
  • clear
  • env
  • exit
  • history英语history (Unix)
  • id
  • logname
  • mesg英语mesg
  • passwd
  • su
  • sudo
  • uptime
  • talk英语talk (software)
  • tput英语tput
  • uname
  • w
  • wall英语wall (Unix)
  • who
  • whoami
  • write英语write (Unix)
文本编辑
  • awk
  • banner英语banner (Unix)
  • basename
  • comm英语comm
  • csplit英语csplit
  • cut
  • diff
  • dirname
  • ed
  • ex
  • fmt英语fmt
  • fold英语fold (Unix)
  • head英语head (Unix)
  • iconv
  • join英语join (Unix)
  • less
  • more
  • nl英语nl (Unix)
  • paste英语paste (Unix)
  • sed
  • sort英语sort (Unix)
  • spell英语spell (Unix)
  • strings英语strings (Unix)
  • tail
  • tr
  • uniq英语uniq
  • vi
  • wc
  • xargs
壳层内建
网络英语Network utility
查找
文档
  • apropos英语apropos (Unix)
  • help英语help (command)
  • man
软件开发
杂项
  • bc
  • cal
  • dc
  • expr
  • lp英语lp (Unix)
  • lpr
  • sleep
  • true和false
  • yes
文件管理导航
文件管理操作
  • attrib英语ATTRIB
  • cacls
  • cipher
  • compact
  • copy
  • del英语del (command) (erase)
  • deltree英语deltree
  • expand
  • icacls
  • makecab
  • md (mkdir)
  • move英语move (command)
  • rd (rmdir)
  • recover英语recover (command)
  • ren英语ren (command) (rename)
  • replace英语replace (command)
  • Rmdir
  • robocopy英语robocopy
  • xcopy英语XCOPY
磁盘管理
  • chkdsk
  • convert英语convert (command)
  • defrag
  • diskcomp英语diskcomp
  • diskcopy英语diskcopy
  • diskpart英语diskpart
  • fdisk英语fdisk
  • format英语Format (command)
  • label英语label (command)
  • subst英语SUBST
  • scandisk
  • sys英语SYS (command)
  • vol英语vol (command)
  • vssadmin
进程
  • exit
  • kill
  • powercfg英语powercfg
  • runas
  • sc
  • shutdown
  • start英语start (command)
  • taskkill
  • tasklist英语tasklist
注册表
用户环境
  • date
  • mode
  • path
  • set
  • setx
  • time英语TIME (command)
  • title
  • ver英语ver (command)
  • Whoami
文件内容
  • comp英语comp (command)
  • edit英语MS-DOS Editor
  • edlin英语edlin
  • fc英语Microsoft File Compare
  • find英语find (command)
  • findstr
  • print英语PRINT (command)
  • type英语TYPE (DOS command)
脚本
  • choice英语choice (command)
  • clip
  • cscript
  • doskey英语DOSKEY
  • echo
  • for
  • Goto
  • if
  • more
  • pause
  • prompt英语Command-line_interface#Command_prompt
  • rem
网络
维护
启动管理
软件开发
杂项
  • cls
  • help英语help (command)