Linux系统中的文件查看和查询命令

news2025/1/18 19:02:08

在这里插入图片描述

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。
🍎个人主页:Java Fans的博客
🍊个人信条:不迁怒,不贰过。小知识,大智慧。
💞当前专栏:Java案例分享专栏
✨特色专栏:国学周更-心性养成之路
🥭本文内容:Linux系统中的文件查看和查询命令

文章目录

    • 💖 文件查看命令
      • 💫 cat命令
      • 💫 tac命令
      • 💫 more命令
      • 💫 less命令
      • 💫 head命令
      • 💫 tail命令
    • 💖 文件查询命令
      • 💫 locate命令
      • 💫 Whereis命令
      • 💫 find命令
      • 💫 find 的复杂应用

在这里插入图片描述

💖 文件查看命令

常用的查看命令有:cat、tac、more、less、head、tail、nl

命令解释
cat由第一行开始显示档案内容;
tac从最后一行开始显示档案内容,tac是cat的倒写;
more一页一页地显示档案内容;
less与more类似,但比more更好,它可以往前翻页;
head只看前几行;
tail只看末尾几行;
nl显示行号。

💫 cat命令

名称:cat

全称:concatenate

使用权限:所有使用者

使用方式:cat [-AbeEnstTuv] [–help] [–version] file Name

说明:将文件串连接后传到基本输出(输出到屏幕或加>file Name 重定向到另外的文件)。

参数说明
-n或–number由1开始对所有输出的行数编号。
-b或–number-nonblank和-n相似,但对空白行不编号。
-s或–squeeze-blank当遇到有连续两行以上的空白行,就代换为一行。
-v或–show-nonprinting显示具体格式。

在这里插入图片描述

在这里插入图片描述

💫 tac命令

名称:tac

使用权限:所有使用者

使用方式:tac fileName

说明:将文件从最后一行到第一行反向输出。

在这里插入图片描述

💫 more命令

名称:more

使用权限:所有使用者

使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [filename…]

说明:类似cat,不过会以一页一页地显示,方便使用者逐页阅读,按空格键(Space)往下一页显示,按B键往回(back)一页显示,而且还有搜寻字串的功能(与vi相似)。使用中,按H键,可以查看说明文件

在这里插入图片描述
在这里插入图片描述

💫 less命令

名称:less

使用权限:所有使用者

使用方式:less [Option] filename

参数说明
-c从顶部(从上到下)刷新屏幕,并显示文件内容,而不是通过底部滚动完成刷新。
-f强制打开文件,二进制文件显示时,不提示警告。
-i搜索时忽略大小写,除非搜索串中包含大写字母。
-I搜索时忽略大小写,除非搜索串中包含小写字母。
-m显示读取文件的百分比。
-M显示读取文件的百分比、行号及总行数。
-N在每行前输出行号。

说明:less的作用与more十分相似,不同的是less允许使用者往回翻页,以浏览已经看过的部分,同时因为less并未在一开始就读入整个文件,因此在遇到大型文件的开启时,会比一般的文书编辑器(如vi)来得快速。

在这里插入图片描述
在这里插入图片描述

💫 head命令

名称:head

使用权限:所有使用者

使用方式:head [Option] filename

参数说明
-n后面接数字,代表显示几行。

说明:以行为单位进行数据读取。

在这里插入图片描述

💫 tail命令

名称:tail

使用权限:所有使用者

使用方式:tail [Option] filename

参数说明
-n后面接数字,代表显示几行。

说明:以行为单位读取文档最后n行的数据。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

💖 文件查询命令

Linux下有locate、whereis以及find命令可以供选择查找文件。

💫 locate命令

名称:locate

使用权限:所有使用者。

使用方式:locate [-d] [–help] [–version] keyword

补充说明:locate指令用于查找符合条件的文档,它会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。

参数说明
-d或—database=配置locate指令使用的数据库。locate指令预设的数据库位于/var/lib/slocate目录里,文档名为slocate.db,可使用这个参数另行指定。
–help在线帮助。
–version显示版本信息。
-i忽略大小写。
-r后面接正则表达式。

在这里插入图片描述

在这里插入图片描述

说明1:在caowei目录下创建了6个空文件,并且其名字中都有whb字样,但是使用locate whb查找却没有找到刚刚建立的几个文件。

说明2:使用locate查找速度非常快,因为locate是在以建立的数据库/var/lib/slocate/里面查找资料的,根本没有去找文件本身,所以不用去硬盘当中存取文件,结果当然速度很快。但有个限制就是locate所依赖的数据库每天更新一次,所以当新建一些文件的时候是查不到的,要想查找到新建的文件需要更新这个数据库,可以使用updatedb命令更新数据库,不过只有root账户才可以手动更新数据库。

在这里插入图片描述

说明3:updatedb用来更新数据库。

说明4:当时用updatedb命令更新数据库时,会有一个长时间的等待过程,不是系统死机,这是在执行更新。如果想让其在后台执行,可以在执行的时候在前面加上&符号,让其在后台执行。

在这里插入图片描述

说明5:出现updatedb无法打开临时文件的问题是因为权限不够,所以切换到了root账户下。切换的时候加了“-”,意思是保持原来的环境变量。

说明6:当updatedb完毕后,再次使用locate whb去查询,发现仍然看不到,因为测试的东西都在/tmp目录下,updatedb默认更新是不包含/tmp/下的内容,所以即使更新了数据库还是看不到想要的数据。

在这里插入图片描述

💫 Whereis命令

名称:whereis

使用权限:所有使用者

使用方式:whereis [-bfmsu] [-B <目录>…] [-M <目录>…] [-S <目录>…] [文件…]

补充说明:whereis指令会在特定目录中查找符合条件的文件。这些文件的类型应属于原始代码、二进制文件,或是帮助文件。

参数说明
-b只查找二进制文件。
-B<目录>只在设置的目录下查找二进制文件。
-f不显示文件名前的路径名称。
-m只查找说明文件。
-M<目录>只在设置的目录下查找说明文件。
-s只查找原始代码文件。
-S<目录>只在设置的目录下查找原始代码文件。
-u查找不包含指定类型的文件。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

💫 find命令

find命令相对于前面两个查询命令速度慢,但功能非常强大。

名称:find

使用权限:和要查找的文件相关

使用方式:find pathname -options [-print –exec –ok…]

参数说明
pathnamefind命令所查找的目录路径: .表示当前目录,/表示系统根目录。
-printfind命令将匹配的文件输出到标准输出。
-execfind命令对于匹配的文件执行该参数所给出的shell命令。相应命令的形式为‘command’{} ;注意{}和;之间的空格。
-ok和-exec的作用相同,只不过以一种更安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

补充说明:find命令是这三个搜索命令中功能最强大的,如果用户有读取的权限,可以将Linux磁盘中的任何文件全部搜索并显示出来,但正式因为其功能如此强大也导致其搜索速度不如另外两个搜索命令。

参数说明
-name按照文件名查找文件。
-perm按照文件权限来查找文件。
-prune使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user按照文件所属用户来查找文件。
-group按照文件所属的组来查找文件。
-mtime-n、+n按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime选项,它们都和-mtime选项基本一样。
-nogroup查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser查找无有效属组的文件,即该文件的属组在/etc/passwd中不存在。
-newer filefile为一个已经存在的文件名称,查找比file更新的文件名。
-type查找某一类型的文件,列举如下。
b – 块设备文件;
d – 目录;
c – 字符设备文件;
p – 管道文件;
l – 符号链接文件;
f – 普通文件。
-size[±]查找大小比size还要大(+)或者小(-)的文件,size的衡量标准说明如下:
c代表byte;
k代表1M byte
-depth在查找文件时,首先查找当前目录中的文件,然后在其子目录中查找。
-fstype查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件包含了本系统中有关文件系统的信息。
-mount在查找文件时不跨越文件系统mount点。
-follow如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。

查找httpd.conf这个文件在系统的哪个目录下

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

说明:find为查找;“/”为在根目录下查找,但如果需要在其他的目录下查找则直接输入目录信息即可;-name后面接要查找的文件名字,这里需要注意的是挡在admin账户下查找httpd.conf的时候提示权限不够,切换账户至root后可得到结果。

在这里插入图片描述

在这里插入图片描述

💫 find 的复杂应用

在这里插入图片描述

find的特殊功能是能够执行额外的命令,find为查找命令;pathname为find所查找的范围;-option为find的参数,可以加上上面列举的所有参数;-exec表示额外命令的开始;command是额外命令;-parameter为command所带的参数;{}代表find与后面参数结合起来查找的结果;“\;”为额外命令的结束。

.代表目前目录;-type f代表普通文件;-exec执行的额外命令为ls -l

在这里插入图片描述

在这里插入图片描述

将当前目录下的所有目录查找出来并复制到/tmp目录下。

在这里插入图片描述

说明1:这个命令组合执行的结果不是将当前目录复制到/tmp,而是将当前目录下的所有内部文件全部复制到/tmp目录中。

说明2:cp {},代表复制的源为find所得到的结果,/tmp当前为目标所在了。


  码文不易,本篇文章就介绍到这里,如果想要学习更多Java系列知识点击关注博主,博主带你零基础学习Java知识。与此同时,对于日常生活有困扰的朋友,欢迎阅读我的第四栏目:《国学周更—心性养成之路》,学习技术的同时,我们也注重了心性的养成。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/161739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

向“全栈”进发,大型线上商城实战项目,Spring Boot + Vue 前后端分离版本的商城来了(文末有视频)

新蜂商城 Vue 版本&#xff0c;它来了&#xff01;&#xff08;文末有视频&#xff09; 如上图所示&#xff0c;新蜂商城 Vue 版本已经开发完成&#xff0c;这是新蜂商城开源项目的第一个大版本更新&#xff0c;根据大量的用户调研&#xff0c;最终决定将新蜂商城升级为 Spring…

DC-2 靶场实操

靶场搭建 ​ 靶场部署 下载网址&#xff1a;https://www.vulnhub.com/?qDC- tips&#xff1a;强烈建议各位师傅们使用迅雷或idm要不然下载靶场将是一个十分痛苦的环节 之后环境搭建操作步骤一致故此处搭建环境以DC-1为例 将下好的压缩包解压&#xff0c;你就会看到一个.ov…

堆排序(升序降序)

堆排序是利用堆这种数据结构而设计的一种排序算法&#xff0c;堆排序是一种选择排序&#xff0c;它的最坏、最好、平均时间复杂度均为O(nlogn)&#xff0c;是不稳定排序。 小根堆&#xff08;最小堆&#xff09;&#xff1a;每个结点的值都<其左右孩子结点的值。 大根堆&…

跨境电商独立站多语言,fecify saas商城解决方案

跨境独立站&#xff0c;面向的是全球国家&#xff0c;每个国家都有自己的语言&#xff0c;譬如&#xff1a;英语&#xff0c;德语&#xff0c;法语&#xff0c;俄语&#xff0c;西班牙语&#xff0c;葡萄牙语&#xff0c;韩语&#xff0c;日语&#xff0c;阿拉伯语&#xff0c;…

Latex-表格和图片

双栏排版表格跨栏加*号\begin{table*}...\end{table*}表格整体尺寸修改\resizebox{列宽}{行高}{...}列宽、行高可以为数值&#xff08;如50mm&#xff09;&#xff0c;也可以根据文字调整&#xff08;如\textwidth指自适应文字宽度&#xff09;表格内文字居中\begin{tabular}{c…

TypeScript变量声明,声明变量的关键字,变量的类型推导

目录 1.变量声明 2.赋值其他类型的值 3.声明变量的关键字 4.变量的类型推导&#xff08;推断&#xff09; 1.变量声明 声明了类型后TypeScript就会进行类型检测&#xff0c;声明的类型可以称之为类型注解&#xff1b; var/let/const 标识符: 数据类型 赋值; 这里的string是…

拉伯证券|年报行情如火如荼 博弈“超预期”还须警惕“风险点

本周以来&#xff0c;在指数转入高位盘整的背景下&#xff0c;A股商场资金围绕年报头绪展开布局&#xff0c;“年报预增”一跃成为商场最强主线&#xff0c;不少成绩预增公司短期股价收获明显超额收益。 Choice数据显现&#xff0c;截至1月12日盘前&#xff0c;开年以来共136家…

VM-图像旋转和拼接

有时受安装空间限制&#xff0c;相机安装方向和人观察角度不一致&#xff0c;需要对图像进行旋转&#xff0c;方便人员核对图像和实物VM中&#xff0c;对图像进行中心旋转的模块有“图像修正”、“几何变换”&#xff0c;其中“图像修正”只能对黑白图像进行旋转&#xff0c;“…

HTML表单:<form>标签

当您想要通过网页来收集一些用户的信息&#xff08;例如用户名、电话、邮箱地址等&#xff09;时&#xff0c;就需要用到 HTML 表单。表单可以接收用户输入的信息&#xff0c;然后将其发送到后端应用程序&#xff0c;例如 PHP、Java、Python 等&#xff0c;后端应用程序将根据定…

ASMR(网站)

ASMR秀 这个网站不需要特殊工具&#xff0c;直接就能看&#xff0c;内含欧美、儿本、H国的ASMR助眠视频节目。ASMR吧 失眠者的福音&#xff0c;也是男同胞的FU利&#xff01;ASMRS生活 专注科普知识。ASMRhtt删ps://除ww文w.as字mr打sho开w即可.com/

DeepMind 发布强化学习通用算法 DreamerV3,AI 成精自学捡钻石

内容一览&#xff1a;强化学习是多学科领域的交叉产物&#xff0c;其本质是实现自动决策且可做连续决策。本文将介绍 DeepMind 最新研发成果&#xff1a;扩大强化学习应用范围的通用算法 DreamerV3。 关键词&#xff1a;强化学习 DeepMind 通用算法 本文首发自微信公众号&#…

沙溢44岁、沈腾、邓超43岁、马丽40岁,他们就不能上春晚了吗

最近笔者浏览网络&#xff0c;发现很多吐槽央视春晚的声音&#xff0c;有些吐槽感觉有理有据&#xff0c;有些就有些强词夺理了。比如说&#xff0c;有人把今年参加春晚演员的年龄&#xff0c;做了一个简单的梳理&#xff0c;似乎想证明一些什么东西。 在这张年龄盘点表当中&am…

spring之面向切面编程AOP概述

文章目录前言一、介绍AOP二、面向切面编程的七大术语三、切点表达式前言 AOP&#xff08;Aspect Oriented Programming&#xff09;面向切面编程&#xff0c;是一种编程技术。 AOP是对OOP&#xff08;面向对象&#xff09;的补充延伸。 AOP底层使用的就是动态代理实现的。 Spr…

论文投稿指南——中文核心期刊推荐(地理学 2)

【前言】 &#x1f680; 想发论文怎么办&#xff1f;手把手教你论文如何投稿&#xff01;那么&#xff0c;首先要搞懂投稿目标——论文期刊 &#x1f384; 在期刊论文的分布中&#xff0c;存在一种普遍现象&#xff1a;即对于某一特定的学科或专业来说&#xff0c;少数期刊所含…

2017双11交易系统TMF2.0技术揭秘,实现全链路管理

摘要&#xff1a; 本文是《2017双11交易系统TMF2.0技术揭秘》演讲整理&#xff0c;主要讲解了基于TMF2.0框架改造的交易平台&#xff0c;通过业务管理域与运行域分离、业务与业务的隔离架构&#xff0c;大幅度提高了业务在可扩展性、研发效率以及可维护性问题&#xff0c;同时以…

2023年网络爬虫实训(第一天)

任务1&#xff1a;理解http协议。https协议&#xff0c;tcp协议。udp协议。掌握http的通讯过程。掌握客户端是如何获取respnse并展示数据的。 HTTP协议是建立在请求/响应模型上的。首先由客户建立一条与服务器的TCP链接&#xff0c;并发送一个请求到服务器&#xff0c;请求中包…

基于微信小程序的电影交流平台小程序

文末联系获取源码 开发语言&#xff1a;Java 框架&#xff1a;ssm JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7/8.0 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.3.9 浏览器…

Three.js 粗糙度贴图与金属度贴图

在开始介绍贴图之前&#xff0c;我们先介绍一下粗糙度属性以及金属度属性。 粗糙度属性 .roughness 表示材质的粗糙程度&#xff0c;0 表示平滑的镜面反射&#xff0c;1 表示完全漫反射&#xff0c;而金属度属性 .metalness 表示材质与金属的相似度&#xff0c;非金属材质&…

Java基础学习笔记(十四)—— 集合(2)

集合1 Set 集合1.1 Set 集合概述1.2 Set 集合的使用2 TreeSet 类2.1 TreeSet 类概述2.2 TreeSet 基本使用2.3 TreeSet 排序3 HashSet 类3.1 HashSet 类概述3.2 HashSet 基本使用3.3 哈希值3.4 HashSet 案例4 Map 集合4.1 Map 集合概述4.2 Map 常用方法4.3 Map 的遍历5 HashMap …

mysql:存储过程的创建与使用

一、创建存储过程 使用MySql Workbench创建存储过程&#xff0c;一定要记得使用delimiter指明结束符&#xff0c;否则会报错&#xff1a;Statement is incomplete, expecting: ;’ 错误示例&#xff1a; create procedure area_pro1(in mylevel tinyint) beginselect * from…