Linux 文件查询
查看文件类型:file
如果你想要知道某个文件的基本数据,例如是属于ASCII或者是data文件,或者是binary,且其中有没有使用到动态函数库等等的信息,可以用file查看

which (寻找“执行文件”)


whereis (寻找特定文件)


whereis是如何实先的呢,Linux系统会将系统内的所有文件都记录在一个数据库文件里面,而当使用whereis或者是locate时,都会以此数据库文件
的内容为准,因为,有会你会发现使用这两个执行文件时,会找到已删除的文件,也切也找不到最新的刚才创建的文件。因为这两个命令是由数据库
当中的结果去查找文件的所在。
locate

locate寻找的数据是由已创建的数据库/var/lib/mlocate/里面的数据所查询到的,所以不用直接在硬盘中访问数据,是很快速。
那么有什么限制呢?就是因为它是经由数据库来查找的,而数据库的创建默认是每天执行一次,所以当你创建文件后查询该文件,那么locate
会告诉你找不到。因为必须要更新数据库。那能否手动更新数据库吗?当然可以,更新locate数据库的方法非常简单,直接输入“updatedb”就可以了
updatedb命令会去读取/etc/updatedb.conf这个配置文件的设置,然后去硬盘里面进行查找文件名的操作,最后就更新整个数据库文件了。因为updatedb
会去查找硬盘,所以当你执行updatedb时,可能会等待数分钟时间。
find


关于参数-n,如图所示

+4 代表大于等于5天前的文件名
-4 代表小于等于4天内的文件名
4 则是代表4-5那一天的文件名


如果将系统里面某个账号删除了,但是账号已经在系统内创建了很多文件时,就可能发生无主孤魂的文件存在。此时可以用-nouser来找出该类型文件。

-perm这个参数,他的重点在找出特殊权限的文件。SUID与SGID都可以设置在二进制程序上,假设想要将/bin 、/sbin这两个目录下只要有SUID或者
SGID的文件就列出来,你可以这样做:

因为SUID是4分,SGID是2分,总共6分,因此可用+6000来处理这个权限。find后面可以接多个目录进行查找,另外find本来就会查找子目录。


范例把的例子以图解来说明,如图

{}代表的是“由find找到的内容”,如夯土,find的结果会被放置到{}位置中。
-exec一直到“\;”是关键字,代表find额外命令的开始(-exec)到结束(\;),在这中间就是find命令内的额外命令。在上例中就是“ls -l{}”
因为“;”在bash环境下有特殊意义,因此利用反斜杠来转义。
如果要找的文件是具有特殊属性的,例如SUID、文件所有者、文件大小等,那么利用locate是没有办法找到。用find就很重要啦。
find还可以利用通配符来找文件名。比如想找/etc下面文件名包含httpd的文件:

Linux 文件查询的更多相关文章
- 查询linux文件的MD5值
Linux下查询文件的MD5值:md5sum xxx.iso.md5 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Message-Digest Algor ...
- Linux目录和文件——查询目录和文件的命令
Linux目录和文件——查询目录和文件的命令 摘要:本文主要学习了在Linux系统中是如何查询目录和文件的. which命令 which命令是根据PATH环境变量设置的路径,去搜索执行文件. 基本语法 ...
- Linux文件查找.md
Linux 文件查找 在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 w ...
- linux 文件系统结构及命令
1.linux 文件系统结构 / 根目录 root |--mnt/ | |--sdcard/ 挂载点 | |--usb0 | |--cdrom |--home | |--soft01 <- 用 ...
- Linux文件权限概念
一.Linux文件属性 1.第一列代表这个文件的类型与权限(permission): 共有10个字符 第一个字符代表这个文件的类型,是"目录,文件或链接文件等": [d]----& ...
- #Linux学习笔记# Linux文件的属性以及权限说明
1. Linux文件的属性 关于Linux文件的属性的说明和设置请参考鸟哥Linux私房菜:Linux 的文件权限与目录配置 2. 目录和文件的权限意义 在Linux系统中,每个文件都有三种身份的权限 ...
- linux文件系统模拟
#include "stdio.h" #include <stdlib.h> //#include <conio.h> #include <strin ...
- linux入门教程(六) Linux文件与目录管理
在linux中什么是一个文件的路径呢,说白了就是这个文件存在的地方,例如在上一章提到的/root/.ssh/authorized_keys 这就是一个文件的路径.如果你告诉系统这个文件的路径,那么系统 ...
- Linux实战教学笔记08:Linux 文件的属性(下半部分)
第八节 Linux 文件的属性(下半部分) 标签(空格分隔): Linux教学笔记 ---更多相关资料请点我查看 第1章 链接的概念 在linux系统中,链接可分为两种:一种为硬链接(Hard Lin ...
随机推荐
- jmeter用什么查看结果报告
JMeter查看测试结果的方法很多,最常用的几种是:察看结果树.聚合报告.图形报表.邮件观察仪等.
- 关于 JS this
关于 JS this 1. this 与 普通函数 2. this 与 bind.call.apply 3. this 与 箭头函数 4. this 与 return 4.1 返回 引用对象 4.2 ...
- Sbase数据库自动截断日志
http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36273.1550/html/sprocs/X3 ...
- Solr+ik分词支持特殊符号分词
在工具类(CharacterUtil.java)里,找到方法 identifyCharType,加入以下代码: } else if (ub == Character.UnicodeBlock.GREE ...
- UCOSIII等待多个内核对象
内核对象 内核对象包括信号量.互斥信号量.消息队列和事件标志组 UCOSIII中允许任务同时等待多个信号量和多个消息队列 主结构体 typedef struct os_pend_data OS_PEN ...
- ceph 接入OpenStack
创建对应的pool: ceph osd pool create volumes 512 ceph osd pool create images 512 ceph osd pool create vms ...
- Spring事务传播机制与隔离机制
详情查看 https://www.jianshu.com/p/249f2cd42692
- 微信小程序 时间戳 转化为 日期格式
util.js : function transTime(unixtime) { var dateTime = new Date(parseInt(unixtime) * 1000) var yea ...
- MYSQL中的乐观锁实现(MVCC)简析
https://segmentfault.com/a/1190000009374567#articleHeader2 什么是MVCC MVCC即Multi-Version Concurrency Co ...
- puppeteer UI自动化测试demo(一)
一.简介 这个不大常见,比较常见的是selenium和weddriver: 所以就增加一个说明,来自官网的. Puppeteer 是一个 Node 库,它提供了一个高级 API 来通过 DevTool ...