上一篇的博客对于Linux如何在不同目录下跳转和查看目录下内容做出了总结,主要靠cd和ls,很常见也很实用。但是你看到目录下面那么多不同花花绿绿的文件,心里是不是痒痒,是不是想进去一探究竟,有办法!

  先介绍一下比较常见的两个命令:cat 和 more。

  cat -n  (在打印的每一行文件内容前显示行号)

  cat命令用于查看文件内容,后面可以接文件名作为参数,接多个文件名同样可以,如下:

  cat  test   test2

  它会将指向文件的内容一起打印在屏幕上,有时候可能会很大一片,如果文件有几十页,那么对于我们查看文件简直是极大的困扰。那么此时用more来解决这个问题再好不过,more不仅可以一行一行的显示文件内容,一页一页的显示对它来说也是轻而易举。

  more   文件名  (打印文件内容)

  more命令会在终端最后一行显示当前已查看文件百分比,按下空格会向下翻动一页,按下enter向下翻动一行,按Q直接退出。这个命令在查看大文件是确实实用,但是还有更强大的 less,已经可以称为文本阅读工具了,两者之间操作非常相似,但是less的强大我光吹你也不懂,反正强就完事儿了。下面来简单介绍下:

  ps:和more一样的操作就不谈了

  1.可以直接使用方向键在文本文件中前后左右滚屏

  2.实现了复杂检索,高亮显示等操作

  3.对与常用文字处理程序按键兼容(vim,Emacs)

  less在查看文件时同样可以向下翻页,按空格就行,但是它同样可以向上翻,按B即可。对于上述的几个亮点,复杂检索比较值得关注一下,毕竟有工具可以用我为什么还一页页的翻呢,偷懒同样可以使你变强!

  less下搜索字符串:“/” 加上查找内容,第一个匹配的字符串会高亮显示,如果想要查找下一个匹配字符串,再次输入“/”,按下回车即可。当然,Linux还提供了专门的命令用于查找文件内容,那就是grep:

  grep 关键词    文件名 (搜索文件中的关键字)

  这个命令可以指定多个文件搜索,举个例子,查找“woyao  shangtian”,可以使用单引号包含空格,完成查找:

  grep  'woyao shangtian'   test.c

  有时候我们可能会遇到这样一种情况,想找一个文件,但我不知道它在哪,怎么办,毕竟Linux的目录可真不少,很容易让人绝望的说。find这时候跳出来了,全都可以交给它。它的主要作用就是在指定范围内查找文件,格式如下:

  find  参数    查找文件范围路径     文件类型或文件名

  在/usr/bin/下查找Zip文件: find  /usr/bin  -name  zip  -print,最后终端上会打印出查找文件的绝对路径。哦,对了,上面提到了文件类型,很有必要介绍一下,Linux的核心便是一切皆文件,那么Linux的文件类型一共有几种呢?

  答案是六种,当然这可能仅仅是我所了解的,欢迎补充!一般文件类型在命令中作为参数出现:

  参数               含义                  参数                含义

     b            块设备文件               f               普通文件

     c            字符设备文件           p               命名管道

     d             目录文件                 l                符号链接

  当然find命令并非完美无缺,对于大批量搜索与对于文件所处范围并不了解时效率是极低的,而locate便是专门解决这一痛点而生的,如果你要找到系统里所有的PDF文件,那么

  locate  *.pdf

  结果在不到一秒的时间里便会直接被打印出来,我很好奇,这个命令是遍历了整个系统的目录找出匹配的文件的话,速度未免也太快了吧,实现这个程序的程序员也太牛了,但是深入了解后我发现其实不然,当然实现这个命令的人还是很牛的,但是人家是用脑子写代码,暴力搜索这个事太low了。locate实际上并没有进入目录,而是建立了一个文件名数据库,查找文件时直接进入数据库检索,确实很有想法,不蛮干很值得学习啊。我们同样是可以更新文件名数据库的,获取管理员权限,然后敲上updatedb就完事儿了。

  以上命令掌握了的话我感觉查看个文件,找个文件那就都只是洒洒水了,多多练习,你就是最帅的Linux玩家!

Linux命令进阶篇-文件查看与查找的更多相关文章

  1. Linux命令进阶篇之一

    利用file命令查看那文件的类型 cd /etc 这里面的文件 命令:file 语法:file [-bLvz] 文件 解释:-b:显示结果,但是不显示文件名称 -L:直接显示符号链接所指向的文件的类型 ...

  2. linux 命令进阶篇之二

    一.预备知识 选取init的进程. cat :由第一行开始显示文件内容 tac:由最后一行开始显示,有没有发现和cat是反过来写的 more:一页一页的显示内容 less:与more相似,但是可以往前 ...

  3. Linux命令进阶篇之二

    实验内容: cat :由第一行开始显示文件内容       tac:由最后一行开始显示,有没有发现和cat是反过来写的       more:一页一页的显示内容       less:与more相似, ...

  4. 分布式进阶(十) linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel

    linux命令行下载文件以及常用工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Li ...

  5. Linux命令-自动挂载文件/etc/fstab功能详解

    Linux命令-自动挂载文件etcfstab功能详解 一./etc/fstab文件的作用 磁盘被手动挂载之后都必须把挂载信息写入/etc/fstab这个文件中,否则下次开机启动时仍然需要重新挂载. 系 ...

  6. 【转载】Linux命令-自动挂载文件/etc/fstab功能详解[转]

    博客园 首页 新随笔 联系 订阅 管理 随笔 - 322  文章 - 0  评论 - 19 Linux命令-自动挂载文件/etc/fstab功能详解[转]     一./etc/fstab文件的作用 ...

  7. Linux 命令安装bin文件

    Linux 命令安装bin文件 安装命令: //1,增加文件的可执行权限 chmod a+x jdk-6u30-linux-x64.bin //2,程序即安装在执行命令的文件夹下 ./jdk-6u30 ...

  8. Linux 命令集合之进程查看命令-软件安装命令-文件查找命令-主机修改命令

    1.dpkg 的使用 dpkg -s ssh 查看是否按装了ssh软件 dpkg -L ssh 查看ssh安装的关联目录结构和安装位置 dpkg -i vim.deb 本地离线安装vim编辑器 apt ...

  9. Linux文件查看与查找命令

    cat  查看一个文件 -E: 显示行结束符$ -n: 对显示出的每一行进行编号 -A:显示所有控制符 -b:非空行编号 -s:压缩连续的空行成一行 -T:显示制表符 常用:cat -An /etc/ ...

随机推荐

  1. estt

    1.路由控制的定义 1.1.IP地址与路由控制 互联网是由路由器连接的网络组合而成的.为了能让数据包正确地到达目标主机,路由器必须在途中进行正确地转发.这种向"正确的方法"转发数据 ...

  2. Tuning xgboost in R:Part 1

    第一次调整Boosting算法的参数可能是一个非常艰难的任务.有很多参数可供选择,调整不同的参数会有不同的结果产生.最好的调参可能是取决于数据.每当我得到一个新的数据集,我都会学到一些新的东西.对分类 ...

  3. Django ORM必会13条之外的查询方法

    基于双下划线的查询 # 价格 大于 小于 大于等于 小于等于 filter(price__gt=') # 筛选出大于90 filter(price__lt=') # 筛选出小于90 filter(pr ...

  4. AI能帮我们造出一个无肉的世界吗?

    AI听起来很遥远,其实已经渗透到我们的日常工作和生活中.在不远的未来,互联网.大数据.硬件的发展和软件的优化,乃至全社会的参与,人工智能将真正从实验室走进生活,它将成为改变我们生活的一部分.我们吃的肉 ...

  5. 测试用例设计经典面试题之电梯、杯子、笔、桌子、洗衣机、椅子、ATM等

    测试用例设计经典面试题之电梯.杯子.笔.桌子.洗衣机.椅子.ATM等 1.测试项目:电梯 需求测试:查看电梯使用说明书.安全说明书等 界面测试:查看电梯外观 功能测试:测试电梯能否实现正常的上升和下降 ...

  6. Haproxy的应用

    如上图所示,在 192.168.1.0/24 这个网段的客户端想要访问在 172.20.0.0/20 网段内的服务器,所有的通信又不想暴露在互联网上,因此可以在这两个网段内分别都放一台 Haproxy ...

  7. udev更改按键映射

    通过更改udev的规则实现敲击a键获得s的输出 安装evtest   首先安装evtest检测键盘的扫描码 123456789 # apt install evtest# sudo evtestNo ...

  8. Node学习(二) --使用http和fs模块实现一个简单的服务器

    1.创建一个www目录,存储静态文件1.html.1.jpg. * html文件内容如下: 12345678910111213 <html lang="en">< ...

  9. JasperReport框架使用教程(附带常见空白页问题说明)

    概述与安装使用 1. PDF报表概述 概述 ​ 在企业级应用开发中,报表生成.报表打印下载是其重要的一个环节.在之前的课程中我们已经学习了报表中比较重要的一种:Excel报表.其实除了Excel报表之 ...

  10. Python3——2019年全国大学生计算二级考试

    Python语言程序设计二级重点(2019年版) 第一章 程序设计基本方法 IPO程序编写方法 :输入(input),输出(output),处理(process): Python程序的特点: (1)语 ...