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系统中将输出的文件内容自动加上行号的工具。

相关推荐
菜的不敢吱声2 小时前
swift学习第4天
服务器·学习·swift
晚枫歌F5 小时前
Dpdk介绍
linux·服务器
TH_16 小时前
35、AI自动化技术与职业变革探讨
运维·人工智能·自动化
风送雨6 小时前
FastMCP 2.0 服务端开发教学文档(下)
服务器·前端·网络·人工智能·python·ai
model20057 小时前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
yuhaiqun19897 小时前
学服务器训练AI模型:5步路径助力高效入门
运维·服务器·人工智能·笔记·机器学习·ai
huaweichenai7 小时前
docker部署kkFileView实现文件预览功能
运维·docker·容器
以太浮标7 小时前
华为eNSP模拟器综合实验之-BFD联动配置解析
运维·网络·华为·信息与通信
阿杰 AJie8 小时前
主流传输 /通信协议的【使用场景 + 详细使用说明】大全
服务器·tcp/ip
工程师老罗8 小时前
龙芯2k0300 PMON取消Linux自启动
linux·运维·服务器