Linux文本处理工具--less

简介: ess是Linux上查看文件内容的工具,功能比more更强大,支持page up和page down,more只能往后查看,不能往前走。另外less有搜索功能,可以向前、向后搜索

Linux文本处理工具--less

less简介

less是Linux上查看文件内容的工具,功能比more更强大,支持page up和page down,more只能往后查看,不能往前走。另外less有搜索功能,可以向前、向后搜索。

截取less的man文档中的一句话,Also, less does not have to read the entire input file before starting, so with large input files it starts up faster than text editors like vi . 也就是说,less启动时不会加载整个文档,所以对于大文件来说,less的启动速度是要比vi更快的。

less命令的用法

less命令是一个交互式的软件,所以less的命令参数选项包含了启动时参数选项和交互式选项,启动参数选项控制软件的运行前行为,交互式参数选项控制启动之后的行为。

less命令格式

less命令基本命令格式为

less [options] filename1,filename2...

less命令参数选项

  1. 启动时参数选项
  • -b <缓冲区大小> 指定缓冲区的大小
  • -e 当文件显示结束后,自动离开
  • -f 强制打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • -o <文件名> 将less 输出的内容在指定文件中保存起来
  • -Q 不使用警告音
  • -s 显示连续空行为一行
  • -S 行过长时间将超出部分舍弃
  • -x <数字> 将“tab”键显示为规定的数字空格

  1. 交互式参数选项

命令内查看帮助

  • h 显示帮助界面
  • Q 退出less 命令

搜索功能

  • /字符串:向下搜索“字符串”的功能
  • ?字符串:向上搜索“字符串”的功能
  • n:重复前一个搜索,如果是/的话,就是继续向下搜索,如果是?的话,就向上搜索
  • N:反向重复前一个搜索,如果是/的话,就是继续向上搜索,如果是?的话,就向下搜索
  • &字符串:仅仅显示匹配上的行

翻页

  • b 向上翻一页
  • d 向下翻半页
  • u 向上滚动半页
  • y 向上滚动一行
  • 空格键 向下一行
  • 回车键 向下一页
  • [pagedown]: 向下翻动一页
  • [pageup]: 向上翻动一页
  • Ctrl + F:向下翻页
  • Ctrl + B :向上翻页
  • Ctrl + D :向下移动半屏
  • Ctrl + U : 向上移动半屏
  • G:移动到最后一行
  • g:移动到第一行
    注:向下:是往下走,往页码大的地方走

多个文件打开及文件间操作
less的下方会显示当前文件和下一个文件的文件名

  • 打开多文件的方式
  1. less file1 file2 file3 ...可以打开多个文件
  2. :e:已经运行了less命令,想要打开另外一个文件,可以使用:e进行打开,支持tab补全,支持glob通配
    vim也有相同的两种方式,已经运行vim的情况下需要使用:open file_name,这没有less好用,1.不支持tab键补全;2.不支持glob通配
  • 多文件间切换
  1. 键入 :n:切换到下一个文件,这个和vim一样(vim使用:bn)
  2. 键入 :p:切换到上一个文件,这个和vim一样(vim使用:bp)
  • 使用less编辑文件
  1. :在运行的less界面上,使用v选项,会调用系统默认的编辑器(一般来说是vi,但是具体怎么查看就还是个问题???????EDITOR和VISUAL可能有用,但是查询出来没有值,再有是set -o,本机上的set -o中 vi off。)当进入键入v之后,确实和vi的使用方式是一样的,输入i进入INSERT模式,使用q!,qw等命令都可以。
  • 设置标签
  1. 设置标签,在less界面键入m,然后页面上会出现mark的字样,输入当个字符(多个字符和数字都不行),页面上的mark字样消失。
  2. 返回标签处,在less界面键入',页面出现"goto mark"的字样,输入刚刚设定的标签,就返回到刚刚的页面处。
    这个功能在大文件查看是非常好用!

less命令使用实例

$ps -ef|less 
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 May08 ?        00:00:03 /sbin/init
root          2      0  0 May08 ?        00:00:00 [kthreadd]
root          3      2  0 May08 ?        00:00:03 [migration/0]
root          4      2  0 May08 ?        00:00:13 [ksoftirqd/0]
root          5      2  0 May08 ?        00:00:00 [stopper/0]
:
# 这样就可以慢慢查看每个进程的id号了,这其实不是经常用,毕竟要浏览所有进程的需求并不多,主要是为了满足单个屏幕无法容下所有内容,而且需要前后翻页的情况。

实验心得

网络上有人说在交互式命令中使用F选项,可以达到文件尾部,但是实验上来看,可以是可以,不过less会有一个计算该文件的行数的过程,我的实验数据是1221049行,个人笔记本的虚拟机,到文件尾部大概花了10秒左右,看起来还不错。但是tail -f file_name是秒出的。
另外如果使用F进入“Waiting for data..”这个模式后,使用Ctrl + c退出,不会立即退出less,可以继续做其他操作
G:可以直接跳到文件尾部,无论是F还是G对系统的资源占用都没有那么大(实验数据量是308M,但是考虑到机器本身也没那么好,所以less的性能还是相当不错了),同样的机器,我使用vim打开该文件,top下的wa%等值都有一定飙升的现象。

参考

https://www.cnblogs.com/peida/archive/2012/11/05/2754477.html
https://www.cnblogs.com/molao-doing/articles/6541455.html

相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
161 8
|
3月前
|
监控 Unix Linux
Linux系统工具
Linux系统工具
57 6
|
3天前
|
安全 网络协议 Linux
结合 `nc` 工具利用笑脸漏洞(Smile Bug)攻击 Metasploitable2 Linux
本文介绍如何使用 `nc`(Netcat)工具结合笑脸漏洞(Smiley Bug)攻击 Metasploitable2 Linux 靶机。首先概述了 `nc` 的基本功能和高级用法,包括建立连接、监听端口、文件传输等操作。接着详细描述了笑脸漏洞的原理及其在网络攻防中的应用,展示了通过 `nc` 发送恶意输入检测漏洞的方法。最后结合 Python 脚本实现更复杂的攻击场景,并强调了合法性和环境隔离的重要性。
29 13
|
10天前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
|
3月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
78 5
Linux系统之安装Ward服务器监控工具
|
3月前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
50 2
Linux系统之安装cook菜谱工具
|
2月前
|
Linux 开发工具
linux文本管理命令
本文档介绍了Linux系统中常用的文本处理命令,包括`echo`、`cat`、`head`、`tail`、`wc`、`less`、`grep`以及重定向符号的使用方法和练习题。此外,还详细讲解了VIM编辑器的特点、工作模式、常用快捷键和高级技巧,帮助用户高效地进行文本编辑和处理。
60 4
|
2月前
|
缓存 监控 Linux
Linux性能分析利器:全面掌握perf工具
【10月更文挑战第18天】 在Linux系统中,性能分析是确保软件运行效率的关键步骤。`perf`工具,作为Linux内核自带的性能分析工具,为开发者提供了强大的性能监控和分析能力。本文将全面介绍`perf`工具的使用,帮助你成为性能优化的高手。
200 1
|
2月前
|
缓存 监控 Linux
掌握Linux性能分析:深入探索perf工具
【10月更文挑战第26天】
105 1
|
4月前
|
Linux Shell
10-10|linux命令查询 关键字在文本中出现的行数
10-10|linux命令查询 关键字在文本中出现的行数