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 ...
随机推荐
- Spring Boot 实战 —— MyBatis(注解版)使用方法
原文链接: Spring Boot 实战 -- MyBatis(注解版)使用方法 简介 MyBatis 官网 是这么介绍它自己的: MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过 ...
- JS权威指南读书笔记(四)
第十章 正则表达式 1 正则表达式直接量定义为包含在一对斜杠(/)之间的字符 a /s$/ == new RegExp("s$") 2 直接量字符:所有字母和数字都是按照字 ...
- 前端以及django零碎补充
前端 1. js的循环each 前端需要循环,可以借助each这个方法 var dic = {'key1':'value1','key2':'value2'}; ']; //each(变量, 方法) ...
- Twitter分布式自增ID算法snowflake原理解析(Long类型)
Twitter分布式自增ID算法snowflake,生成的是Long类型的id,一个Long类型占8个字节,每个字节占8比特,也就是说一个Long类型占64个比特(0和1). 那么一个Long类型的6 ...
- c# zip写comment注释
//生成的压缩文件为test.zip using (FileStream fsOut = File.Create("test.zip")) { //ZipOutputStream类 ...
- jenkins报错 Upgrading Jenkins. Failed to update the default Update Site 'default'. Plugi
解决方案: jenkins\hudson.model.UpdateCenter.xml 文件, 将 url 中的 https://updates.jenkins.io/update-center.js ...
- mybatis的XML中注释需谨慎
报错内容: java.sql.SQLException: Parameter index out of range (3 > number of parameters, which is 2) ...
- SCADA系统构架的安全分析总结
概念: SCADA 数据采集与监控 Supervisory Control And Data Acquisition .包括了计算机设备 工业控制组件 网络 组成部件 ,SCADA 系统被用 ...
- mysqldump 全备
[root@db01 b]#mysqldump -uroot -poldboy123 -A -R --triggers --master-data=2 --single-transaction | g ...
- ET·ci — 全自动软件测试调度(持续集成)平台
ET·ci 提供了编译-测试-发布解决方案,包括:自动提取配置库代码进行自动构建, 自动调度静态测试工具(如QAC)进行静态测试,自动调度单元测试工具(如Tessy)开展动态测试,自动 ...