Linux常见查看文件命令

目录

一、cat

[1.1. 查看文件内容](#1.1. 查看文件内容)

[1.2. 创建文件](#1.2. 创建文件)

[1.3. 追加内容到文件](#1.3. 追加内容到文件)

[1.4. 连接文件](#1.4. 连接文件)

[1.5. 显示多个文件的内容](#1.5. 显示多个文件的内容)

[1.6. 使用管道](#1.6. 使用管道)

[1.7. 查看文件的最后几行](#1.7. 查看文件的最后几行)

[1.8. 使用 -n 选项显示行号](#1.8. 使用 -n 选项显示行号)

[1.9. 使用 -b 选项仅显示非空行的行号](#1.9. 使用 -b 选项仅显示非空行的行号)

二、tac

三、less

四、more

五、head

六、tail

七、grep

八、nl


一、cat

主要用于查看和连接文件

当文件较大时,使用 cat 命令会将整个文件内容输出到终端中,可能会导致终端卡顿或无法响应。此时建议使用 less 命令进行分页查看。

当需要在文件开头或中间插入内容时,建议使用 sed 命令或文本编辑器进行编辑,而不是使用 cat 命令。

当需要将多个文件的内容合并成一个文件时,如果文件较大,建议使用 merge 命令或其他文件合并工具,以避免出现内存不足等问题。

cat [选项] [文件]

  • -n:显示行号,会在输出的每一行前加上行号。
  • -b:显示行号,但只对非空行进行编号。
  • -s:压缩连续的空行,只显示一个空行。
  • -E:在每一行的末尾显示 $ 符号。
  • -T:将 Tab 字符显示为 ^I
  • -v:显示一些非打印字符。

1.1. 查看文件内容

显示文件 filename 的内容

复制代码
cat filename

1.2. 创建文件

将标准输入重定向到文件 filename,覆盖该文件的内容。即可以在终端中输入要写入的内容,按Ctrl+D保存并退出,从而创建一个名为newfile.txt的新文件并包含输入的内容。

复制代码
cat > filename

注:终端输入内容后记得按回车,否则输入内容为空

1.3. 追加内容到文件

将标准输入追加到文件 filename 的末尾。即可以在终端中输入要追加到文件末尾的内容,按Ctrl+D保存并退出,从而创建一个名为newfile.txt的新文件并包含输入的内容。

复制代码
cat >> filename  

注:终端输入内容后记得按回车,否则输入内容为空

1.4. 连接文件

将 file1 和 file2 的内容合并到 file3 中。

复制代码
cat file1 file2 > file3

1.5. 显示多个文件的内容

同时显示 file1 和 file2 的内容。

复制代码
cat file1 file2

1.6. 使用管道

将 cat 命令的输出作为另一个命令的输入。

复制代码
cat filename | command

1.7. 查看文件的最后几行

显示文件 filename 的最后 10 行。

复制代码
cat filename | tail -n 10

1.8. 使用 -n 选项显示行号

显示文件 filename 的内容,并在每行的前面加上行号。

复制代码
cat -n filename

1.9. 使用 -b 选项仅显示非空行的行号

复制代码
cat -b filename

二、tac

与cat相反,将文件内容倒序的方式显示出来

三、less

less 与 more 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。

  • -e 当文件显示结束后,自动离开
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • b 向上翻一页
  • d 向后翻半页
  • Q 退出less 命令
  • u 向前滚动半页
  • y 向前滚动一行
  • 空格键 滚动一页
  • 回车键 滚动一行
  • pagedown\]: 向下翻动一页

more命令和less命令都用于查看文本文件,支持逐页查看和滚动屏幕。它们都支持上下按键来滚动屏幕,并且可以搜索文本内容。不同之处在于,less命令提供了更多的功能,如向前翻页、向后搜索、跳转到指定行等,而more命令只能向前滚动,一次显示一页内容,并且不能往回滚动‌。

四、more

more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h

命令参数:

  • -num 一次显示的行数
  • +num 从第 num 行开始显示
复制代码
more -1 testfile


more +1 testfile

常用操作:

  • Enter 向下n行,需要定义。默认为1行
  • Ctrl+F 向下滚动一屏
  • 空格键 向下滚动一屏
  • Ctrl+B 返回上一屏
  • = 输出当前行的行号
  • :f 输出文件名和当前行的行号
  • V 调用vi编辑器
  • !命令 调用Shell,并执行命令
  • q 退出more

五、head

head 命令可用于查看文件的开头部分的内容,有一个常用的参数 -n 用于显示行数,默认为 10,即显示 10 行的内容。

  • -n<行数> 显示的行数。
复制代码
head -n 1 N2.txt

六、tail

tail 命令可用于从文件末尾开始查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件,有一个常用的参数 -n 用于显示行数,默认为 10,即显示最后10行。

  • -f 循环读取
  • -n<行数> 显示文件的尾部 n 行内容
复制代码
显示文件 N2.txt 的内容,从第 2 行至文件末尾:
tail -n +2 N2.txt

七、grep

Linux grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。

  • -i:忽略大小写进行匹配。
  • -n:显示匹配行的行号。
  • -r:递归查找子目录中的文件。
  • -l:只打印匹配的文件名。
  • -c:只打印匹配的行数。
复制代码
grep f N2.txt

八、nl

是用来在Linux系统中将输出的文件内容自动加上行号的工具。

相关推荐
青柚~6 分钟前
【鲲鹏服务器麒麟系统arm架构部署docker】
服务器·arm开发·docker·架构
人工智能训练19 分钟前
Ubuntu中如何进入root用户
linux·运维·服务器·人工智能·ubuntu·ai编程·root
tianshiyeben21 分钟前
WGCLOUD监控系统使用指南 - 告警消息整理完整版
linux·运维·服务器·系统安全·zabbix
Unlyrical24 分钟前
splice, io_uring_prep_splice 调用(无效参数)
linux·服务器·c++·unix
牛奶咖啡1328 分钟前
银河麒麟高级服务器系统(V11)的安装部署实操保姆级教程
服务器·银河麒麟高级服务器操作系统安装·银河麒麟高级服务器v11配置·设置基础软件仓库时出错·银河麒高级服务器系统的实操教程·生产级部署银河麒麟服务系统教程·linux系统的快速上手教程
喜欢你,还有大家43 分钟前
Docker-存储
运维·docker·容器
暂时先用这个名字1 小时前
信创时代下,PHP/MySQL应用的平滑迁移与运维管理升级(AI整理)
运维·mysql·php·信创·国产化·国产·迁移
前端世界1 小时前
从零搭建 ASP.NET 单文件 Web 项目:一个能真用的 BookShop 管理页实战
服务器·前端·asp.net
---学无止境---1 小时前
Linux内核用户身份管理全链路深度剖析:setuid系统调用完整架构
linux
CS_浮鱼2 小时前
【Linux】进程控制
linux·运维·网络