最近在学Linux,和很多初学者一样,有一大堆的操作命令要去熟悉和掌握,由于Linux秉承“一切皆文件”的思想,因此我们在操作中经常会使用到文件查找的命令喽,下面就简单介绍下在Linux中比较常用的查找命令:

一、which

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

也就是说它返回的是你该命令所处的位置。

举个例子哈,比如说我现在看下使用gcc这个命令当前所在的路径,我用which查找下:

二、whereis

whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

简单来说就是查找你当前系统是否安装了该程序,如果安装了就显示该程序的路径。

下面就还以gcc为例:

因为没有给参数,所以将所有信息都显示出来了,如果我们只想看说明文件的位置就用-m参数:

这样它就只讲你所需要的路径给出了。

下面是一些whereis的命令参数:

-b   定位可执行文件。

-m   定位帮助文件。

-s   定位源代码文件。

-u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

-B   指定搜索可执行文件的路径。

-M   指定搜索帮助文件的路径。

-S   指定搜索源代码文件的路径。

三、locate

说到locate,其实它基本已经能够完成我们基本所需的查找需求,并且速度很快,这是因为它是在一个库中进行查找的,上面的whereis也是哦。而不是通过硬盘来查找的,这个数据库是liunx自动创建的,并且每天更新一次。

下面我们还是看看它的用法吧:

其实用起来很简单,一般用# locate your_file_name 的形式就可以了,比如我要查找一个名为11_26.c的一个文件:

再用之前最好先执行下updatedb更新下,然后再进行使用。

z再给一些常用的参数:

-n  至多显示n个输出。

-h  显示辅助讯息

-v  显示更多的讯息

-V  显示程式的版本讯息

四、find

关于find我就用一句话来形容它:find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。上面说了locate是在一个库里查找文件,因此对于一些有新变动的文件,而你的库还没更新时,这些文件你是用locate找不到的,这时find就派上用场了,它可是从硬盘里一个一个进行查找的,正因为这样它的速度也会相当慢,一般都把它丢到后台运行。

为什么说它功能强大呢?

因为它有很多的参数:

pathname:       #find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。

-print:        #find命令将匹配的文件输出到标准输出。

-exec:        #find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式                   为‘command‘{ } \;,注意{ }和\;之间的空格。

-ok:          #和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell                   命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

-name   filename             #查找名为filename的文件

-perm                     #按执行权限来查找

-user    username            #按文件属主来查找

-group groupname              #按组来查找

-mtime   -n +n               #按文件更改时间来查找文件,-n指n天以内,+n指n天以前

-atime    -n +n              #按文件访问时间来查

-ctime    -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-nogroup                   #查无有效属组的文件,即文件的属组在/etc/groups中不存在

-nouser                    #查无有效属主的文件,即文件的属主在/etc/passwd中不存在

-ctime    -n +n               #按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-nogroup                   #查无有效属组的文件,即文件的属组在/etc/groups中不存在

-nouser                    #查无有效属主的文件,即文件的属主在/etc/passwd中不存在

-newer   f1 !f2               #查更改时间比f1新但比f2旧的文件

-type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件

-size      n[c]               #查长度为n块[或n字节]的文件

-depth                       #使查找在进入子目录前先行查找完本目录

-fstype                     #查更改时间比f1新但比f2旧的文件

-type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件

-size      n[c]               #查长度为n块[或n字节]的文件

-depth                       #使查找在进入子目录前先行查找完本目录

-fstype       #查位于某一类型文件系统中的文件,这些文件系统类型通常可在/etc/fstab中找到

-mount                       #查文件时不跨越文件系统mount点

-follow                      #如果遇到符号链接文件,就跟踪链接所指的文件

-cpio        #查位于某一类型文件系统中的文件,这些文件系统类型通常可在/etc/fstab中找到

-mount                       #查文件时不跨越文件系统mount点

-follow                      #如果遇到符号链接文件,就跟踪链接所指的文件

-cpio                        #对匹配的文件使用cpio命令,将他们备份到磁带设备中

-prune                       #忽略某个目录

下面来举几个例子来体会下吧:

1、显示下今天一天在code目录中访问了哪些文件:

2、再看看10天内在c目录下更改了哪些文件:

3、再看看7天内在c目录下创建了哪些文件:

4、再找找大小超过10000000c的文件:

5、在/查找11_26.c文件:

6、在/下查找code目录:

还有好多的参数就不一一列举了,大家一起去电脑上体验吧,而且参数组合使用可以让你对你的文件为所欲为,哈哈....

拜了个拜!

本文出自 “Waitting” 博客,转载请与作者联系!

linux如何查找目录6,Linux常见四种查找命令相关推荐

  1. linux数据同步技术比较,linux下实现web数据同步的四种方式(性能比较)教程.docx

    linux下实现web数据同步的四种方式(性能比较)教程 实现web数据同步的四种方式=======================================1.nfs实现web数据共享2.rs ...

  2. anydesk远程计算机,AnyDesk远程软件连接失败的常见四种状况?

    AnyDesk远程软件是我们日常生活工作中常用的一款远程软件.体积小,灵活又便捷,帮助我们随时随地移动办公.但我们使用AnyDesk远程软件时,也会出现一些连接失败的情况.接下来,下文将详细叙述一下A ...

  3. 大金空调自动关机常见四种原因

    大金空调属于空调界的NO.1有着完美的技术,但是缺点就是价格有点高,所以维修起来难度也大,在此株洲大金空调维修售后提供大金空调自动关机常见四种问题和原因,望对各位技师或用户有一定的帮助 1.遥控器设置 ...

  4. linux把test目录打包,linux的基本操作(文件压缩与打包)

    文件的压缩与打包 在windows下我们接触最多的压缩文件就是.rar格式的了.但在linux下这样的格式是不能识别的,它有自己所特有的压缩工具.但有一种文件在windows和linux下都能使用那就 ...

  5. linux名词解释目录文件,linux的常识及术语解释

    linux的常识及术语解释 本站整理   发布时间:2009-03-10 10:42:18   作者:jb51.net   我要评论 一.填空题: 1. 在Linux系统中,以 文件 方式访问设备 . ...

  6. linux小技巧-如何修改IP(四种方法)

    目录 项目场景: 方法分析及步骤介绍 原因分析: 解决方案: 项目场景: 项目上经常遇到修改IP的情况,这里总结一些各个情况下修改IP的方法,尤其时有时候没有主机屏幕显示,借助于命令行的方式修改IP ...

  7. linux怎么显示目录层次结构,Linux基础(层级结构、基础命令)

    一.Linux简介 linux的前生是unix.linux操作系统是由Linus Torvalds和世界各地的程序员们共同开发. 优点在于它的开源免费.构造简单,性能稳定. 二.linux和windo ...

  8. linux下实现web数据同步的四种方式(性能比较)

    实现web数据同步的四种方式 ======================================= 1.nfs实现web数据共享 2.rsync +inotify实现web数据同步 3.rs ...

  9. linux修改挂载目录名字,linux下修改mount挂载目录名

    有时根据情况需要更改mount挂载目录名来保持多个机器的统一,方便我们的分布式操作,下面是具体的操作细节. 修改前: 文件系统       容量  已用  可用 已用%% 挂载点 /dev/mappe ...

最新文章

  1. 微信小程序自定义组件之Picker组件
  2. 27亿参数的「野生版」GPT-3开源,GitHub项目2.9K Star量
  3. python入门区块链技术_区块链入门教程
  4. 【数据结构总结】第七章 查找
  5. vite配置 vite.config.js
  6. 使用实体框架核心和C#创建具有Dotnet核心的自定义Web爬虫程序
  7. 离开页面前onbeforeunload事件在火狐的兼容并且提交不触发
  8. 《Algorithms》—— 下压(LIFO)栈(能够动态调整数组大小的实现)
  9. sessionid如何产生?由谁产生?保存在哪里?
  10. 翻译:使用 AWS Deep Racer 的日志分析工具
  11. 【工控老马】基于PLC的花样喷泉设计原理详解
  12. 如何显示或隐藏mac文件后缀名
  13. Star CCM+ 2206安装
  14. 一位硕士毕业生三个月求职经历与经验结晶【转帖】
  15. 微信一年的支付限额满了20万,无法支付了怎么办?
  16. 微信小程序--计算器demo实现
  17. 手机端页面的自适应设计的开发思路
  18. 面试系列 -- 常见面试问题回答思路
  19. 【hh】我胡汉三又回来了
  20. 黑苹果新手指导:名词解释常用软件常见问题说明

热门文章

  1. 我们的愿景是在个人计算机上实现量子霸权
  2. python文件编译_python下编译py成pyc和pyo
  3. 实现秒表功能 : 显示时,分,秒 , 点击按钮开始计时
  4. 数据治理:从一把手工程到数据文化
  5. spring boot (tomcat) 指定使用ipv4 netstat -ntupl查询结果为tcp4(不是tcp6)
  6. Mobiles Wall – 致力于分享最优质的手机壁纸
  7. 设计模式(五)之适配器模式
  8. java中平方的表达式_Java中的运算符及表达式
  9. 浏览器宽度以及滚动条宽度计算
  10. Android 尝试写一份Linux 字符设备驱动