Linux文件的管理和查找的常用命令

目录

查看管理文件内容

1.查看文件

2.分页查看内容

3.动态查看


查看管理文件内容

在Linux中大量的文件内容,占用巨大内存的文件许许多多,尤其是在日常生活工作学习当中,在那么多的文件中,怎样筛选出我们需要去修改,删除,移动,查看的文件,就要用到许许多多基础的筛选查看修改的命令。

1.查看文件

全量查看文件内容(过大的文件会造成虚机卡顿)

命令:cat             查看文件内容

           cat -n         对内容增添行号进行查看

           cat -b         对空白行不进行编辑行号查看

代码如下(示例): 

localhost opt]# ls
1.txt

[root@localhost opt]# vim 1.txt 

我们先随便创建一个文件,然后在里面随随便便输入一些内容 

代码如下(示例): 

[root@localhost opt]# ls
1.txt

[root@localhost opt]# cat 1.txt 
ahdkjasvjksad
vncjanjkai
cmanvjiadugnasd
cvkncoad

当我们用cat去查看此文件,我们在里面输入的一些内容也会在下面以每行的形式显示出来

后面尝试一下拓展命令 cat -n

代码如下(示例): 

[root@localhost opt]# cat -n 1.txt 
     1	ahdkjasvjksad
     2	vncjanjkai
     3	cmanvjiadugnasd
     4	cvkncoad
     5	

给内容每行前面添加上了行号,包括空白格的那一行,也会有行号

如果不想给空白的行添加行号,我们使用cat -b

代码如下(示例): 

[root@localhost opt]# cat -b 1.txt 
     1	ahdkjasvjksad
     2	vncjanjkai
     3	cmanvjiadugnasd
     4	cvkncoad

 空白格前面不会出现行号,但是这个空白的行依然存在,并不是删除

2.分页查看内容

分页查看文件内容

命令:more      /绝对路径

回车可以一行一行往下查看,空格则是查看下面整页内容

当看完文件内容后,会自动退出文件,而且不可搜索指定文件内容

代码如下(示例): 

[root@localhost /]# cd /var/log

[root@localhost log]# ls
anaconda         dnf.log          maillog   speech-dispatcher     vmware-network.log
audit            dnf.rpm.log      messages  spooler               vmware-vgauthsvc.log.0
boot.log         firewalld        ppp       sssd                  vmware-vmsvc-root.log
btmp             gdm              private   swtpm                 vmware-vmtoolsd-root.log
chrony           glusterfs        qemu-ga   tuned                 vmware-vmusr-root.log
cron             insights-client  rhsm      vmware                wtmp
cups             lastlog          samba     vmware-network.1.log
dnf.librepo.log  libvirt          secure    vmware-network.2.log

[root@localhost /]# more /var/log/messages 
Apr  2 21:32:05 localhost kernel: Linux version 4.18.0-193.el8.x86_64 (mockbuild@x86-vm-08.build.e
ng.bos.redhat.com) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Mar 27 14:35:58
 UTC 2020
Apr  2 21:32:05 localhost kernel: Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-4.18.0-193.el8.x86
_64 root=UUID=7c32b41c-76da-470a-8843-6542f6a04d7a ro crashkernel=auto resume=UUID=fe0dfa4c-4cd9-4
e81-8149-e5ce86c58340 rhgb quiet
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point reg
isters'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x020: 'AVX-512 opmask'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x040: 'AVX-512 Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x080: 'AVX-512 ZMM_Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x200: 'Protection Keys User r
egisters'
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[5]:  832, xstate_sizes[5]:   64
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[6]:  896, xstate_sizes[6]:  512
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[7]: 1408, xstate_sizes[7]: 1024
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[9]: 2432, xstate_sizes[9]:    8
Apr  2 21:32:05 localhost kernel: x86/fpu: Enabled xstate features 0x2e7, context size is 2440 byt
es, using 'compacted' format.
Apr  2 21:32:05 localhost kernel: BIOS-provided physical RAM map:
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009e7ff] usable
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x000000000009e800-0x000000000009ffff] reserved
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x0000000000100000-0x000000007fedffff] usable
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x000000007fee0000-0x000000007fefefff] ACPI data
--More--(0%)

后面的--More--(0%)代表已经浏览百分之多少的内容

由于文件内容过大,一页的内容不到1%

命令:less   /绝对路径

也可以进行分页查看,区别在于看完文件内容后不会自动退出,需要按q手动退出,浏览完后也可返回翻看,同时可以搜索指定内容。 

 代码如下(示例):

[root@localhost /]# less /var/log/messages 

Apr  2 21:32:05 localhost kernel: Linux version 4.18.0-193.el8.x86_64 (mockbuild@x86-vm-08.build.eng.bos.redhat.com) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Mar 27 14:35:58 UTC 2020
Apr  2 21:32:05 localhost kernel: Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-4.18.0-193.el8.x86_64 root=UUID=7c32b41c-76da-470a-8843-6542f6a04d7a ro crashkernel=auto resume=UUID=fe0dfa4c-4cd9-4e81-8149-e5ce86c58340 rhgb quiet
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x020: 'AVX-512 opmask'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x040: 'AVX-512 Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x080: 'AVX-512 ZMM_Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x200: 'Protection Keys User registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[5]:  832, xstate_sizes[5]:   64
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[6]:  896, xstate_sizes[6]:  512
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[7]: 1408, xstate_sizes[7]: 1024
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[9]: 2432, xstate_sizes[9]:    8
Apr  2 21:32:05 localhost kernel: x86/fpu: Enabled xstate features 0x2e7, context size is 2440 bytes, using 'compacted' format.
Apr  2 21:32:05 localhost kernel: BIOS-provided physical RAM map:
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009e7ff] usable
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x000000000009e800-0x000000000009ffff] reserved
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved
Apr  2 21:32:05 localhost kernel: BIOS-e820: [mem 0x0000000000100000-0x000000007fedffff] usable
:

底行有一个:我们可以在后面进行指令操作,或者按q退出文件 

3.动态查看

命令:tail -f   /绝对路径

从文件内容底部开始向上查看,不指定行数的情况下默认显示十行内容

实时显示可以随时查看错误,定位操作问题,每进行一步操作下面则会显示操作的步骤日志

代码如下(示例): 

[root@localhost /]# tail -f /var/log/messages

Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option requested_static_routes => '1'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option requested_subnet_mask => '1'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option requested_time_offset => '1'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option requested_wpad       => '1'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option routers              => '192.168.8.2'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option subnet_mask          => '255.255.255.0'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): state changed bound -> extended
Apr  6 23:36:16 localhost systemd[1]: Starting Network Manager Script Dispatcher Service...
Apr  6 23:36:16 localhost dbus-daemon[1072]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Apr  6 23:36:16 localhost systemd[1]: Started Network Manager Script Dispatcher Service.

拓展命令

命令:tail -n   /绝对路径    展示指定的固定行数内容(不实时显示)

代码如下(示例): 

[root@localhost /]# tail -n 5 /var/log/messages 

Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option subnet_mask          => '255.255.255.0'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): state changed bound -> extended
Apr  6 23:36:16 localhost systemd[1]: Starting Network Manager Script Dispatcher Service...
Apr  6 23:36:16 localhost dbus-daemon[1072]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Apr  6 23:36:16 localhost systemd[1]: Started Network Manager Script Dispatcher Service.

我们输入tail  -n  5  /var/log/messages  后面展示了五条内容 

拓展命令

命令 :tail  -fn  /绝对路径  动态查看指定固定数量的内容

代码如下(示例): 

[root@localhost /]# tail -fn 5 /var/log/messages 

Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option subnet_mask          => '255.255.255.0'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): state changed bound -> extended
Apr  6 23:36:16 localhost systemd[1]: Starting Network Manager Script Dispatcher Service...
Apr  6 23:36:16 localhost dbus-daemon[1072]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Apr  6 23:36:16 localhost systemd[1]: Started Network Manager Script Dispatcher Service.

从顶部往下查看文件内容,不指定数量的情况下也是默认十行

命令:head  

代码如下(示例): 

[root@localhost /]# tail -fn 5 /var/log/messages 

Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): option subnet_mask          => '255.255.255.0'
Apr  6 23:36:16 localhost NetworkManager[1300]: <info>  [1680849376.9738] dhcp4 (ens160): state changed bound -> extended
Apr  6 23:36:16 localhost systemd[1]: Starting Network Manager Script Dispatcher Service...
Apr  6 23:36:16 localhost dbus-daemon[1072]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Apr  6 23:36:16 localhost systemd[1]: Started Network Manager Script Dispatcher Service.
^C
[root@localhost /]# head /var/log/messages 
Apr  2 21:32:05 localhost kernel: Linux version 4.18.0-193.el8.x86_64 (mockbuild@x86-vm-08.build.eng.bos.redhat.com) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Mar 27 14:35:58 UTC 2020
Apr  2 21:32:05 localhost kernel: Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-4.18.0-193.el8.x86_64 root=UUID=7c32b41c-76da-470a-8843-6542f6a04d7a ro crashkernel=auto resume=UUID=fe0dfa4c-4cd9-4e81-8149-e5ce86c58340 rhgb quiet
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x020: 'AVX-512 opmask'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x040: 'AVX-512 Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x080: 'AVX-512 ZMM_Hi256'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x200: 'Protection Keys User registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256

head 因为从顶部开始向下显示,所以不存在实时显示,因为新操作的日志都是在下面更新新的日志,顶部不会更新日志 

拓展命令:head -n   /绝对路径     

从顶部开始固定显示指定数量的文件内容

 代码如下(示例):

[root@localhost /]# head -n 5 /var/log/messages 

Apr  2 21:32:05 localhost kernel: Linux version 4.18.0-193.el8.x86_64 (mockbuild@x86-vm-08.build.eng.bos.redhat.com) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Mar 27 14:35:58 UTC 2020
Apr  2 21:32:05 localhost kernel: Command line: BOOT_IMAGE=(hd0,msdos1)/vmlinuz-4.18.0-193.el8.x86_64 root=UUID=7c32b41c-76da-470a-8843-6542f6a04d7a ro crashkernel=auto resume=UUID=fe0dfa4c-4cd9-4e81-8149-e5ce86c58340 rhgb quiet
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
Apr  2 21:32:05 localhost kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'

这个指令和less的用法一样,操作顺序也一样,区别在于head顶部开始显示,并没有实时显示的功能,不能用来排错和定位操作错误。 

平时所用到的以上排查文件命令并不能更改修改文件内容

仅仅用于排查错误操作和错误定位

cat  、more  、tail  、less 主要用于生活工作中排查错误日志文件与配置文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值