文档章节

Linux查找命令

浮躁的码农
 浮躁的码农
发布于 2015/04/24 11:21
字数 1164
阅读 11
收藏 0

(1)find

find命令用于文件搜索,所在路径/bin/find,其语法格式为:

find [搜索范围] [匹配条件]

1)-name:根据文件名搜索,如搜索/etc下的init文件

复制代码
[root@localhost ~]# find /etc/ -name init /etc/sysconfig/init /etc/kdump-adv-conf/kdump_initscripts/init /etc/init

[root@localhost ~]#
复制代码

注:-iname是不区分大小写,与Windows不同的是,按照-name搜索到的文件只有与之完全相同的才会被搜索出来

2)-size:按照文件大小搜索,如搜索根目录下大于100M的文件:

复制代码
[root@localhost ~]# find / -size +204800 find: “/proc/1628/task/1628/fd/5”: 没有那个文件或目录 find: “/proc/1628/task/1628/fdinfo/5”: 没有那个文件或目录 find: “/proc/1628/fd/5”: 没有那个文件或目录 find: “/proc/1628/fdinfo/5”: 没有那个文件或目录

[root@localhost ~]#
复制代码

 

注:num前面的"+"表示大于,"-"表示小于,其次文件的大小需要进行换算,Linux在以数据块为单位,1个数据块即为512字节(0.5k)

3)-user:按所有者进行查找,-group:按所属组进行查找,如在/home目录下查找所有者为username的文件:find /home –user username。

4)-amin:按访问时间进行搜索(access),-cmin:按文件属性修改的时间进行搜索(change),-mmin:按文件内容修改的时间进行搜索(modify)。如在/etc下查找5分钟内被修改过属性的文件:

find /etc –cmin -5

注:+5表示超过5分钟,-5表示在5分钟内

5)连接选项:-a和-o

-a表示与(and)的关系,-o表示或(or)的关系,如在/etc下查找大于80M,小于100M的文件:find /etc –size +163840 –a –size -204800。

6)连接选项:-exec和-ok

格式为:-exec/-ok [命令] {} \;

其中"{}"包含搜索的结果,"\"表示转移字符,分号";"表示命令结束。-exec和-ok用于搜索后文件后执行特定命令。二者的区别是前者直接执行,后者需询问确认。如在/etc下查找inittab文件并显示其详细信息:

[root@localhost ~]# find /etc/ -name inittab -exec ls -l {} \; -rw-r--r--. 1 root root 884 1月 7 22:27 /etc/inittab
[root@localhost ~]#

7)-type和-inum

-type选项是根据文件类型查找,其中"f"表示文件,"d"表示目录,"l"表示软链接文件。如查找/etc下以init开头的文件:

复制代码
[root@localhost ~]# find /etc/ -name init* -a -type f /etc/sysconfig/init /etc/sysconfig/network-scripts/init.ipv6-global /etc/kdump-adv-conf/kdump_initscripts/init /etc/init/init-system-dbus.conf /etc/selinux/targeted/contexts/initrc_context /etc/inittab

[root@localhost ~]#
复制代码

-inum选项是根据i节点查找,Linux中每个文件都有i节点号,通过ls –l命令可以显示,i节点号的作用是:当对一个文件名很复杂的文件进行操作时,可以通过i节点号进行操作,同时,i节点号可以查找硬链接信息

(2)locate

locate命令用于在文件资料库中查找文件,是一种快速查找工具,其语法格式为:

locate [文件名称]

加入-i选项表示不区分大小写进行查找

注:新创建的文件无法使用locate进行查找,因为该文件尚未更新至文件资料库中,若要成功查找,则需使用updatedb命令进行更新。另外,创建在/tmp下的文件并不在文件资料库的收录范围之中,因此也无法查找该文件夹下的文件

查找inittab文件

复制代码
[root@localhost ~]# locate inittab /etc/inittab /usr/share/man/man5/inittab.5.gz /usr/share/vim/vim72/syntax/inittab.vim

[root@localhost ~]#
复制代码

在/root目录下创建一个新文件,使用updatedb进行更新,然后进行查找:

复制代码
[root@localhost ~]# touch text.txt

[root@localhost ~]# locate text.txt

[root@localhost ~]# updatedb

[root@localhost ~]# locate text.txt /root/text.txt
复制代码

(3)which

which命令用于搜索命令所在目录及别名信息,所在路径为/usr/bin/which,语法格式为:

which [命令名称]

如查找rm命令的信息:

[root@localhost ~]# which rm alias rm='rm -i' /bin/rm

其中alias是定义的别名。

(4)whereis

whereis命令用于搜索命令所在目录及帮助文档路径,所在路径为/usr/bin/whereis,其语法格式为:

whereis [命令名称]

如查找ls的命令信息:

[root@localhost ~]# whereis ls ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

(5)grep

grep命令用于在文件中搜索字串匹配的行并输出,所在路径为/bin/grep,其语法格式为:

grep –iv [指定字串] [文件]

其中-i选项表示不区分大小写,-v选项表示排除指定字串进行显示

例:搜索/root下install.log中的mysql所在行:

[root@localhost ~]# grep mysql install.log

安装 mysql-libs-5.1.71-1.el6.i686

例:查看/etc下inittab文件除#开头的行

[root@localhost ~]# grep -v ^# /etc/inittab id:3:initdefault:

© 著作权归作者所有

共有 人打赏支持
浮躁的码农

浮躁的码农

粉丝 64
博文 745
码字总数 145372
作品 0
松江
程序员
专业地攻击:优秀黑客的Linux基础,part 4(查找文件)

我之所以写这一些列的文章是应为很多人在使用Linux的时候都有不解的地方。作为一个黑客,Linux技能是无可替代的攻击利器。 因为Linux有着和Mac OS以及Windows不一样的文件目录结构,所以很多...

djokary
2014/01/24
0
0
在 Linux 上寻找你正在寻找的东西

怎样在 Linux 系统上使用 find、locate、mlocate、which、 whereis、 whatis 和 apropos 命令寻找文件。 在 Linux 系统上找到你要找的文件或命令并不难, 有很多种方法可以寻找。 find 最显然...

作者: Sandra Henry-stocker
05/09
0
0
如何在 Linux 中查找文件

使用简单的命令在 Linux 下基于类型、内容等快速查找文件。 如果你是 Windows 或 OSX 的非资深用户,那么可能使用 GUI 来查找文件。你也可能发现界面受限,令人沮丧,或者两者兼而有之,并学...

作者: Lewis Cowles
04/28
0
0
每天一个linux命令(19):find 命令

Linux下find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。 实例1:查找超找48小时内修改过的文件 find -atime -2 实例2:根据关键字查...

姬风
2014/02/26
0
0
软件测试人员在工作中如何运用Linux

从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到。 对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你...

软件测试网
04/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java并发编程:volatile关键字解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生...

engeue
15分钟前
0
0
通过ajax访问远程天气预报服务

http://www.webxml.com.cn/zh_cn/index.aspx 更改wsdl文件 打开文件将15行,51行,101行去掉 然后把文件复制到c盘 然后在桌面上面就生成了文件 将文件打成jar包 package cn.it.ws.weather;...

江戸川
今天
1
0
聊聊storm的tickTuple

序 本文主要研究一下storm的tickTuple 实例 TickWordCountBolt public class TickWordCountBolt extends BaseBasicBolt { private static final Logger LOGGER = LoggerFactory.getLogg......

go4it
今天
1
0
自动装箱和自动拆箱

自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基...

tsmyk0715
今天
2
0
简易审计系统

1、有时候我们需要对线上用户的操作进行记录,可以进行追踪,出现问题追究责任,但是linux自带的history并不会实时的记录(仅仅在内存中,当用户正常退出(exit logout )时才会记录到history文件里...

芬野de博客
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部