title: Linux文件检索

date: 2017-12-11 19:03:01

tags: linux

categories: linux


whereis

只要执行

whereis ls

就可以搜索到“ls”命令和它的帮助文档的位置。

但它只能搜索man手册、二进制文件和源代码文件。

which

which是一个比whereis更简单的命令,通常用来判断是否安装某个软件,它只在$PATH环境变量中指定的路径中搜索

$ which pacman
/usr/bin/pacman

find

最强大的搜索命令

find []path...] [expression]

-print 输出检索结果

-exec 对匹配的文件执行shell命令

比如要搜索3天前当天发生变化的所有文件

$ find / -mtime 3

搜索3天内发生变化的所有文件

$ find / -mtime -3

搜索3天以前发生变化的所有文件

$ find / -mtime +3

类似的查找条件还有

参数 作用
-user username 按所有者名查找
-group gname 文件属于gname
-nouser 文件没有有效的所有者,即文件的
-name filename 按文件名检索
-atime n 最近访问时间(天)
-amin n 最近访问时间(分钟)
-anewer file 最近访问时间(比file修改时间要晚)
-ctime n 按文件创建时间查找
-mtime n 按文件修改时间查找
-empty 空文件或空目录
-size n 按照文件大小查找
-type b/c/d/p/f/l/s/ 查找块文件/字符文件/目录/命名管道/普通文件/符号链接/套接字
-maxdepth n 最大查找深度
-mindepth n 最小查找深度
-prune pathname 忽略一个目录

例如要在test目录下查找不在test4目录下的文件

$ find test -path "test/test4" -prune -o -print

-o 可以理解为or

上述表达式的伪码表述是

if -path == "test/test4"
-prune
else
-print

-exec是要对找到的文件执行的动作

find . -mtime -1 -exec ls -l {} \;

上述命令列出当前目录下一天内变化的文件的详细信息,ls -l很容易理解,{}是一个占位符,在find执行过程中不断替换为当前找到的文件,后面的exec结束的标记,而\ 是转义字符。

Linux文件检索的更多相关文章

  1. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  2. < 独立项目 - 文本挖掘 > - 2016/10/25 第一更 - <Linux相关知识准备>

    < 独立项目 -  文本挖掘 > 项目立项的相关背景介绍,TODO方向. 一.Ubuntu环境配置 主机系统:Windows 7 SP1  64位操作系统 | i5-4210 CPU | ...

  3. Linux磁盘与文件系统概念理解

    磁盘级别概念     这里讲的主要是网上所谓的老式磁盘,它是由一个个盘片组成的,我们先从个盘片结构讲起.如图1所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每 ...

  4. linux下常用网页查看下载工具--wget

    http://www.linuxidc.com/Linux/2015-06/118256.htm 5 个基于Linux命令行的文件下载和网站浏览工具 rTorrent.wget.cURL.w3m.El ...

  5. Linux下文件查找命令find笔记

    在Linux命令下如果需要快速自己系统所需要处理的文件,可以通过find命令快速进行检索. 如果想在某个路径下查找相应的文件可以执行如下命令: find path -name filename # p ...

  6. Linux curl 命令详解

    命令概要 该命令设计用于在没有用户交互的情况下工作. curl 是一个工具,用于传输来自服务器或者到服务器的数据.「向服务器传输数据或者获取来自服务器的数据」 可支持的协议有(DICT.FILE.FT ...

  7. linux 详解

    一.日常使用命令/常用快捷键命令开关机命令        1.shutdown –h now:立刻进行关机 2.shutdown –r now:现在重新启动计算机 3.reboot:现在重新启动计算机 ...

  8. Linux文本处理详细教程

    1. 文本处理 本节将介绍Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是 ...

  9. 【linux系统】命令学习(五)linux三剑客 grep \ awk \ sed

    grep----基于正则表达式查找满足条件的行 1.内容检索 获取行 grep pattern file 获取内容 grep -o pattern file 获取上下文grep -A -B -C pa ...

随机推荐

  1. 第四百零三节,python网站在线支付,支付宝接口集成与远程调试,

    第四百零三节,python网站在线支付,支付宝接口集成与远程调试, windows系统安装Python虚拟环境 首先保证你的系统已经安装好了Python 安装virtualenv C:\WINDOWS ...

  2. Ubuntu下安装antlr-4.7.1

    简介:antlr工具将语法文件转换成可以识别该语法文件所描述的语言的程序. 例如:给定一个识别json的语法,antlr工具将会根据该语法生成一个程序,该程序可以通过antlr运行库来识别输入的jso ...

  3. 自定义GridView实现分割线解析

    前两天在些项目的时候碰到常用的GridView要实现一些分割线,之前就是用本方法利用listView和Item的背景颜色的不同线显示分割线.这是最low的一种做法.于是我就简单的写了一个自定义的 Gr ...

  4. LeetCode - 768. Max Chunks To Make Sorted II

    This question is the same as "Max Chunks to Make Sorted" except the integers of the given ...

  5. NW.js 桌面应用程序

    nw.js官网    https://nwjs.io/downloads/ 中文网:https://nwjs.org.cn/ 参考文档 https://www.cnblogs.com/xuanhun/ ...

  6. Python yield 函数功能

    python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield.有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用. 一段代码 def test_dict_sort(): ...

  7. Go语言基础之变量和常量

    Go语言基础之变量和常量 变量和常量是编程中必不可少的部分,也是很好理解的一部分. 标识符与关键字 标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名.常量名.函数名等等. Go语 ...

  8. js中 给json对象添加属性和json数组添加元素

    js中 给json对象添加新的属性 比如现在有一个json对象为jsonObj,需要给这个对象添加新的属性newParam,同时给newParam赋值为pre.做法如下: var obj={ &quo ...

  9. react 简单的用函数调出ui显示

    import test from '../components/test' const info = () => { test.info('This is a normal message'); ...

  10. ubuntu下搭建LAMP环境

    本文参考:http://www.linuxdiyf.com/linux/21265.html 请支持原创. 步骤一:安装apache root@mrwang:~$ sudo apt install a ...