---恢复内容开始---

文件搜索命令:which

命令名称:which

命令所在路径:/usr/bin/which

执行权限:所有用户

语法:which  [命令名称]

功能描述:显示系统命令所在目录,以及别名记录

范例:$which  ls

一切皆文件:命令根据权限(路径)可分为两类:1,root /sbin /usr/sbin   2,普通路径 /bin  /usr/bin

此命令可根据查找的命令所在的路径判断其权限。

whereis [命令名称]

与which类似

可以显示系统命令的所在路径以及帮助文档(所在文档)

尽管可以搜索,但应该减少搜索,占用太多资源。所以服务器的规划应该有条理的规划。

文件搜索命令:find

命令名称:find

命令所在路径:/usr/bin/find

执行权限:所有用户

语法:find [搜索路径]  [搜寻关键字]

功能描述:查找文件或目录(任意)

范例:

$find  /etc  -name  init   在目录/etc中查找文件或目录init,精准的搜索。

$find  /     -size   +204800  在根目录下查找大于100MB的文件或目录

$find  /home  -usr  samlee   在根目录下查找所有者为samlee的文件或目录

-name 根据文件名查找

在根目录下查找,会遍历整个硬盘,占用大量资源,应避免。

当只记得文件名一部分时,可以使用通配符,常用的通配符有两个

一个是 *   匹配任意字符,包括零个字符

比如要查找以init开头的文件或目录,则init*则可

若要查找包含init的文件或目录,则*init*则可

另一个是?  匹配单个字符 比如文件或目录名含7个字符,只记得前4个,则可用init???则可

总之在查询时要尽可能的精确路径,精确关键词。节省系统资源,占用系统资源越少越好。

linux严格区分大小写。不区分用 -iname 只是在搜索是不区分大小写。

-size   根据文件大小查找  大多数linux以block数据块  512字节=0.5kb(基本通用)

100MB=? block

100MB=102400KB=204800block

大于  +204800

小于  -204800

等于  204800

-user  根据文件所有者查找

-group根据文件所属组查找

另外是根据时间查找

1,天 ctime  atime  mtime

2,分钟  cmin  amin  mmin

c-change改变,表示文件的属性被修改过,所有者,所属组,权限。-l所显示的

a-access 访问,表示被人查看过

m-modify修改,表示文件内容被修改过

-  表示多长时间之内,如-1

+  超过

$find  /etc  -mmin  -120   在120分钟内被修改过内容的文件有哪些。

$find  /etc  -ctime  -1     在/etc下查找24小时内被修改过程属性的文件和目录

1.连接符   -a   and逻辑与    -o   or逻辑或

$find  /etc  -size  +163840 -a  -size  -204800 在/etc下查找大于80MB小于100MB的文件

$find  /etc  -name  init* -a  -type(类型) f(二进制文件) 在/etc目录下查找init开头且类型为二进制文件的文件

$find  /etc  -name  init* -a  -type       l(软连接文件)在/etc目录下查找init开头且类型为软连接的文件

-type 意为文件类型 f 二进制文件  l 软连接文件   d 目录

$find /etc  -name  init*  or  -size +204800 在/etc下查找以init开头或大小大于100MB的文件或目录

2.连接符 find ......  -exec 命令 {} \;

{}表示前面find查询的结果

/ 表示一个转义符(符号命令使用本身的含义)

;表示结束

注意三者之间有空格

$rm testfile

rm: remove regular cmpty file ‘testfile’? Y

$ which rm

alias rm=’rm -i’             //这也就是所说的别名,而\的使用则使其变成最原始的rm无-i选项

/bin/rm

$ \rm tesyfile              //此时直接删除

$

;则表示语句的结束

$find  /etc  -name  inittab -exec  ls  -l  {} \; 查看/etc目录下inittab的详细信息

$find  /etc  -name  testfile3 -exec rm {}\;将/etc下的testfile3文件直接删掉

$find  /test  -name  test  -exec ls -l {} \;将/test下的test文件列出详细信息

连接符 -ok(询问输入)

$find  /etc  -name inittab -ok ls -l {} \;意为查找到目标文件后,询问是否执行ls

$find  /etc  -name inittab -ok rm {} \;当后面的命令为rm时显得至关重要,询问是否移除。

$find /etc -name init* -a -type f -exec ls -l {} \;意为列出/etc下的以init开头的二进制文件的详细信息

另外的选项:根据i节点查找 无论文件名多奇怪,它总有一个i节点。i节点可以映射到多个文件,所以硬连接可以更新。

ls -i 便可列出此目录下文件的i节点

只要获得i节点便可利用find命令进行删除

例如:

无论发现何等奇异名字的文件,都可通过find查找i节点的方法来进行删除。

-inum 根据i节点查找

find . -inum 31531 -exec rm {} \ .

文件搜索指令:locate

指令名称:locate

指令英文原意:list files in databeses

指令所在路径:/usr/bin/locate

执行权限:all user

语法:locate [搜索关键字]

功能描述:寻找文件或目录在文件库中。此命令十分快,是因为建立了一个资料库。只是在资料库中找,并没有在硬盘上找。

范例:$locate  file

列出所有和file相关的文件

locate经常查找一些系统默认安装的命令,配置文件等。

此命令在unix下一般不提供,只在linux下提供。

locate与find不同,find是在目录下查找,locate是在定期更新的数据库中查找所以速度非常快,locate经常和命令updatedb配合使用

新的文件建立后,资料库不会及时更新。

文件搜索指令:updatedb

指令英文原意:update the slocate database

指令所在路径:/usr/bin/updatedb

执行权限:root

语法:updatedb

功能描述:建立整个系统目录文件的数据库

范例:#updatedb

当建立新文件,而新文件没有录入数据库时,通过locate则不能查找到

在linix系统下会有个计划任务定期执行updatedb

注意在/temp文件夹下的所有文件并不会被收录在资料库其中。

-i不区分大小写

文件搜索命令:grep

命令名称:grep

命令所在路径:/bin/grep

执行权限:所有用户

语法:grep [指定字串]  [源文件]

功能描述:在文件中搜寻字串匹配的行并输出

范例:#grep ftp /etc/services 所有和ftp相关的行输出出来

/etc/services 存放了所有网络协议对应的端口和信息

同样 -i不区分大小写。

-v 去掉 含#的行    grep -v ^# /etc/inittab ^表示行首。

---恢复内容结束---

文件搜索命令:which

命令名称:which

命令所在路径:/usr/bin/which

执行权限:所有用户

语法:which  [命令名称]

功能描述:显示系统命令所在目录,以及别名记录

范例:$which  ls

一切皆文件:命令根据权限(路径)可分为两类:1,root /sbin /usr/sbin   2,普通路径 /bin  /usr/bin

此命令可根据查找的命令所在的路径判断其权限。

whereis [命令名称]

与which类似

可以显示系统命令的所在路径以及帮助文档(所在文档)

同时会显示别名。如rm  =  rm -i 询问是否删除。

文件搜索命令:find

命令名称:find

命令所在路径:/usr/bin/find

执行权限:所有用户

语法:find [搜索路径]  [搜寻关键字]

功能描述:查找文件或目录(任意)

范例:

$find  /etc  -name  init   在目录/etc中查找文件或目录init

$find  /     -size   +204800  在根目录下查找大于100MB的文件或目录

$find  /home  -usr  samlee   在根目录下查找所有者为samlee的文件或目录

-name 根据文件名查找

在根目录下查找,会遍历整个硬盘,占用大量资源,应避免。

当只记得文件名一部分时,可以使用通配符,常用的通配符有两个

一个是 *   匹配任意字符,包括零个字符

比如要查找以init开头的文件或目录,则init*则可

若要查找包含init的文件或目录,则*init*则可

另一个是?  匹配单个字符 比如文件或目录名含7个字符,只记得前4个,则可用init???则可

总之在查询时要尽可能的精确路径,精确关键词。节省系统资源,占用系统资源越少越好。

-size   根据文件大小查找  大多数linux以block数据块  512字节=0.5kb(基本通用)

100MB=? block

100MB=102400KB=204800block

大于  +204800

小于  -204800

等于  204800

-user  根据文件所有者查找

另外是根据时间查找

1,天 ctime  atime  mtime

2,分钟  cmin  amin  mmin

c-change改变,表示文件的属性被修改过,所有者,所属组,权限。

a-access 访问,表示被人查看过

m-modify修改,表示文件内容被修改过

-  表示多长时间之内,如-1

+  超过

$find  /etc  -mmin  -120   在120分钟内被修改过内容的文件有哪些。

$find  /etc  -ctime  -1     在/etc下查找24小时内被修改过程属性的文件和目录

1.连接符   -a   and逻辑与    -o   or逻辑或

$find  /etc  -size  +163840 -a  -size  -204800 在/etc下查找大于80MB小于100MB的文件

$find  /etc  -name  init* -a  -type(类型) f(二进制文件) 在/etc目录下查找init开头且类型为二进制文件的文件

$find  /etc  -name  init* -a  -type       l(软连接文件)在/etc目录下查找init开头且类型为软连接的文件

-type 意为文件类型 f 二进制文件  l 软连接文件   d 目录

$find /etc  -name  init*  or  -size +204800 在/etc下查找以init开头或大小大于100MB的文件或目录

2.连接符 find ......  -exec 命令 {} \;

{}表示前面find查询的结果

/ 表示一个转义符(符号命令使用本身的含义)

$rm testfile

rm: remove regular cmpty file ‘testfile’? Y

$ which rm

alias rm=’rm -i’             //这也就是所说的别名,而\的使用则使其变成最原始的rm无-i选项

/bin/rm

$ \rm tesyfile              //此时直接删除

$

;则表示语句的结束

$find  /etc  -name  inittab -exec  ls  -l  {} \; 查看/etc目录下inittab的详细信息

$find  /etc  -name  testfile3 -exec rm {}\;将/etc下的testfile3文件直接删掉

$find  /test  -name  test  -exec ls -l {} \;将/test下的test文件列出详细信息

连接符 -ok(询问输入)

$find  /etc  -name inittab -ok ls -l {} \;意为查找到目标文件后,询问是否执行ls

$find  /etc  -name inittab -ok rm {} \;当后面的命令为rm时显得至关重要,询问是否移除。

$find /etc -name init* -a -type f -exec ls -l {} \;意为列出/etc下的以init开头的二进制文件的详细信息

另外的选项:根据i节点查找 无论文件名多奇怪,它总有一个i节点。i节点可以映射到多个文件,所以硬连接可以更新。

ls -i 便可列出此目录下文件的i节点

只要获得i节点便可利用find命令进行删除

例如:

无论发现何等奇异名字的文件,都可通过find查找i节点的方法来进行删除。

文件搜索指令:locate

指令名称:locate

指令英文原意:list files in databeses

指令所在路径:/usr/bin/locate

执行权限:all user

语法:locate [搜索关键字]

功能描述:寻找文件或目录

范例:$locate  file

列出所有和file相关的文件

locate经常查找一些系统默认安装的命令,配置文件等。

此命令在unix下一般不提供,只在linux下提供。

locate与find不同,find是在目录下查找,locate是在定期更新的数据库中查找所以速度非常快,locate经常和命令updatedb配合使用

文件搜索指令:updatedb

指令英文原意:update the slocate database

指令所在路径:/usr/bin/updatedb

执行权限:root

语法:updatedb

功能描述:建立整个系统目录文件的数据库

范例:#updatedb

当建立新文件,而新文件没有录入数据库时,通过locate则不能查找到

在linix系统下会有个计划任务定期执行updatedb

文件搜索命令:grep

命令名称:grep

命令所在路径:/bin/grep

执行权限:所有用户

语法:grep [指定字串]  [源文件]

功能描述:在文件中搜寻字串匹配的行并输出

范例:#grep ftp /etc/services 所有和ftp相关的行输出出来

/etc/services 存放了所有网络协议对应的端口和信息

linux命令:文件搜索命令的更多相关文章

  1. Linux常用命令——文件搜索命令

    Linux常用命令——文件搜索命令 Linux  以#号开头的内容都是内容描述或配置项 find 描述:文件搜索 语法:find [搜索范围] [范围条件] . 当前目录 示例:[root@local ...

  2. 4.Linux的文件搜索命令

    1.文件搜索命令  which 语法:which [命令名称] 范例:$which ls  列出ls命令所在目录 [chanshuyi@localhost ~]$ which ls alias ls= ...

  3. Linux的文件搜索命令(locate ,find,grep,find命令和)

    刚开始学Linux,这是关于Linux文件搜索命令,就目前,尽我所能把他写全一点,后期随时补充 文件搜索命令 一.locate命令 二.find命令 三.grep命令 四.find命令和grep命令的 ...

  4. [Linux] 012 文件搜索命令

    文件搜索命令:find 命令名称:find 命令所在路径:/bin/find 执行权限:所有用户 语法:find [搜索范围] [匹配条件] 功能描述:文件搜索 范例: 在目录 /etc 中查找文件 ...

  5. linux笔记:linux常用命令-文件搜索命令

    文件搜索命令:find(文件搜索) 一些示例: 注意:在以文件名为条件进行搜索时,支持通配符. 多条件搜索,以及直接对搜索到的文件进行操作: 文件搜索命令:locate(在文件资料库中查找文件) 文件 ...

  6. Linux基本命令 文件搜索命令

    1.文件搜索命令find ================================================================================== 命令名称 ...

  7. Linux 之 文件搜索命令

    文件搜索命令 参考教程:[千峰教育] 文件搜索定位 grep: 作用:通用规则表达式分析程序,是一种强大的文本搜索工具, 它能使用正则表达式搜索文本,并把匹配的行打印出来. 格式:grep [选项] ...

  8. linux下文件搜索命令学习笔记

    1. locate:按照文件名搜索文件 locate filename 与find在整个操作系统中遍历搜索不同,locate命令在/var/lib/mlocate这个后台数据库中按照文件名搜索,所以优 ...

  9. linux常用命令-文件搜索命令-locate,which,whereis,grep

    locate 目录或文件名 -i 查找的时候不区分大小写 这个类似everything,速度比find快很多,因为这个命令搜索的是它维护的文件资料库,文件资料库是var/lib/mlocate/mlo ...

随机推荐

  1. python tkinter学习——布局

    目录 一.pack() 二.grid() 三.place() 四.Frame() 正文 布局 一.pack() pack()有以下几个常用属性: side padx pady ipadx ipady ...

  2. tar解压包的时候出现错误 gzip: stdin: not in gzip format

    在Linux环境下,通过tar -zxvf 命令解压文件时遇到”gzip: stdin: not in gzip format“等错误:如图所示 root@cmfchina:/usr/java# ta ...

  3. sencha touch Container tpl 监听组件插件(2013-9-14)

    将http://www.cnblogs.com/mlzs/p/3279162.html中的功能插件化 插件代码: /* *tpl模版加入按钮 *<div class="x-button ...

  4. openstack nova 用户管理

    用户管理      创建管理员用户      用法:      nova-manage user admin name [access] [secret]      其中access 和secret可 ...

  5. hihoCoder挑战赛28 题目2 : 二进制翻转

    题目2 : 二进制翻转 时间限制:20000ms 单点时限:1000ms 内存限制:256MB 描述 定义函数 Rev(x) 表示把 x 在二进制表示下翻转后的值 例如: Rev(4)=1,因为 4 ...

  6. [转]Windows上搭建Kafka运行环境

    [转]http://www.cnblogs.com/alvingofast/p/kafka_deployment_on_windows.html Windows上搭建Kafka运行环境   完整解决方 ...

  7. kvm虚拟机不能使用virsh shutdownw命令关闭虚拟机的解决方法

    今天笔者在对kvm虚拟机进行管理时,使用virsh shutdown命令关闭指定的虚拟机时,发现虽然有如下的提示,但其实虚拟机却一直不会真正的关闭. 经过查看virsh命令帮助和上网查询,才得知vir ...

  8. openstack 部署(Q版)-----glance镜像服务安装配置

    一.创建数据库 CREATE DATABASE glance; GRANT ALL PRIVILEGES ON glance.* TO '; GRANT ALL PRIVILEGES ON glanc ...

  9. JAVA补充-接口

    1.接口详解 package com.neusoft.interfaced; /** * 接口: * 语法:interface 接口名{ * public static final 变量1=值1: * ...

  10. Spark集群高可用HA配置

    本文中的Spark集群包含三个节点,分别是Master,Worker1,Worker2. 1.在Master机器上安装Zookeeper,本文安装在/usr/etc目录下 2.在Master机器配置Z ...