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

相关推荐
猫豆~29 分钟前
软件包管理——2day
linux·运维
大白菜13243 小时前
进程的信号
linux
XH-hui3 小时前
【打靶日记】群内靶机Secure
linux·网络安全
Shingmc33 小时前
【Linux】进程控制
linux·服务器·算法
视觉装置在笑7133 小时前
Shell 变量基础与进阶知识
linux·运维
Web极客码4 小时前
如何通过命令行工具检查 Linux 版本信息
linux·运维·服务器
Lynnxiaowen4 小时前
今天我们继续学习Kubernetes内容pod资源对象
运维·学习·容器·kubernetes·云计算
欢鸽儿4 小时前
Vitis】Linux 下彻底清除启动界面 Recent Workspaces 历史路径
linux·嵌入式硬件·fpga
繁华似锦respect5 小时前
C++ 智能指针底层实现深度解析
linux·开发语言·c++·设计模式·代理模式
远程软件小帮手5 小时前
云电脑挂机功能上线!边上班摸鱼边游戏多开教程
运维·服务器