Linux查看文件内容命令

简介: 直接查看文件内容1. catcat 是concatenate的缩写,主要功能是将文件内容连续显示在输出设备上,搭配有效的参数,可以使输出内容达到自己想要的结果。

直接查看文件内容

1. cat

cat 是concatenate的缩写,主要功能是将文件内容连续显示在输出设备上,搭配有效的参数,可以使输出内容达到自己想要的结果。它的缺点是当文件内容行数很多时,往往根本来不及看,所以使用时有局限性。

$ cat rainbow 
This 
is 
my 
  rainbow.

'[-n]参数,用来显示行号'
$ cat -n rainbow 
     1  This 
     2  is 
     3  my 
     4    rainbow.

'[-A]参数,用来将文件内容完整显示(包含特殊字符)'
$ cat -A rainbow 
This $
is $
my $
^Irainbow.$

正常情况下,即使文本内容中有Tab或换行符等特殊字符,输出结果中也不会展示出来。使用cat -A时,输出结果中会将Tab以^I显示,换行符会显示为$。在Windows系统中,是以^M$为换行符,如果你在Windows平台下调试通过的脚本放在Linux系统中却报错,vim中查看代码也没有发现任何问题,那就需要考虑是不是换行符引发的问题。


2. tac

从单词来看,tac是上一个命令cat的反写,实际它的功能也和cat有类似关系。cat是将第一行到最后一行内容连续显示在输出设备上,而tac则是将最后一行到第一行内容连续显示在输出设备上。

$ tac rainbow 
    rainbow.
m y 
is 
This 
3. nl

nl命令和cat -n命令类似,也是会在显示内容时自动添加行号。但是nl命令会自动跳过空白行,而cat -n则不会忽略空白行。

$ nl rainbow 
     1  This 
     2  is 
     3  m y 
     4      rainbow.
       
$  cat -n rainbow 
     1  This 
     2  is 
     3  m y 
     4      rainbow.
     5  
     6  

补充:nl命令和cat -n相比,还可以对行号做较多的设置,如行号位数设置、自动补零等。



翻页查看文件内容

cat,tac,nl这三个命令都是一次性全部将文件内容展示在屏幕上,而moreless命令则支持翻页查看输出内容,当内容行数很多时会变得非常方便。

1. more
$ more log.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
....省略中间的内容.....
.parent-name {
    font-size: 0.7em;
    letter-spacing: -0.07em;
--More--(1%)

more命令运行中,有几个按键可以使用:

  1. 空格键:向下翻页
  2. Enter: 向下翻一行
  3. /字符串:向下搜索字符串内容,按n可以重复搜索同一内容
  4. :f :显示文件名及当前显示的行数
  5. q : 退出命令

2. less

less命令比more命令要更加灵活。使用more命令的时候,只能按空格键向下翻页,不支持向上翻页,而less命令就可以使用[PageUp][PageDn]等按键自由前后翻看文件内容。除此之外,less命令支持更多的字符串搜索功能,不仅可以向下搜索,也可以向上搜索。
less命令运行中,有几个按键可以使用:

  1. 空格键或[PageDn]:向下翻页
  2. [PageUp]:向上翻页
  3. Enter或向下箭头: 向下翻一行
  4. /字符串:向下搜索字符串内容
  5. ?字符串:向上搜索字符串内容
  6. :f :显示文件名及当前显示的行数
  7. n:重复前一个搜索(与/或?有关)
  8. N:反向重复前一个搜索(与/或?有关)
  9. q : 退出命令
    更多用法,可以使用man less查看。


除了从上面介绍的几个命令外,常用的还有headtail命令,用于取出前几行或后几行,基本用法为:

'查看前十行内容'
$ head log .html 
'查看前20行内容'
$ head -n 20 log.html
'实时查看最新的输出内容'
$ tail -f -n 100 catalina.out
'查看第11~20行内容'
$ head -n 20 log.html | tail -n 10
相关文章
|
7天前
|
Shell Linux 程序员
【Linux】Shell 命令以及运行原理
【Linux】Shell 命令以及运行原理
|
3天前
|
存储 Linux 网络安全
在 Linux 中通过 SSH 执行远程命令时,无法自动加载环境变量(已解决)
SSH远程执行命令时遇到“命令未找到”问题,原因是Linux登录方式不同导致环境变量加载差异。解决方案:将环境变量写入`/etc/profile.d/`下的文件,或手动在命令前加载环境变量,如`source /etc/profile`。
|
4天前
|
关系型数据库 MySQL Java
1.Linux常用命令
1.Linux常用命令
25 1
|
6天前
|
存储 数据挖掘 Linux
在 Linux 中查找目录中最大文件用什么,你知道吗
【5月更文挑战第23天】在 Linux 中查找目录中最大文件,可以使用 `du` 命令结合 `sort`,`find` 命令搭配 `xargs` 和 `sort`,或编写 Python 脚本。例如:`du -a /path | sort -nr | head -n 1` 或 `find /path -type f -print0 | xargs -0 du -h | sort -nr | head -n 1`。这些方法适用于服务器管理、数据分析和文件清理等场景,注意文件权限、目录深度和文件系统类型可能影响结果。
20 1
|
7天前
|
Linux
linux 如何删除文件中的空格和换行符号并保存到新文件中
linux 如何删除文件中的空格和换行符号并保存到新文件中
13 0
|
7天前
|
Linux C语言 Windows
linux基本指令总结--文件和目录(一)
linux基本指令总结--文件和目录(一)
|
8天前
|
Linux
【超全】Linux命令思维导图总结 值得收藏
【超全】Linux命令思维导图总结 值得收藏
14 0
|
8天前
|
Linux 文件存储 Windows
Linux常用的基础命令
Linux常用的基础命令
12 1
|
8天前
|
运维 关系型数据库 MySQL
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
|
8天前
|
运维 Linux Shell
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)