平时会偶尔忘记一些命令或者文件,下面的这些命令能够帮我们快速的找到命令或者文件

1. 命令的搜寻

  命令:which

  功能:在PATH配置的目录下搜寻命令

  用法:which [-a] [command]

  参数:

    -a: 把从PATH配置的目录找到找到的所有指令都列出,而不是只显示第一个被找到的指令

  例子1:查找man命令,有且仅显示一条查询结果

    

  例子2:查找man命令,并显示所有的查询结果

    

    由上面两个可以看出有没有参数-a的差别

  注意点:

    这个命令是根据PATH所配置的目录去搜寻待查命令,并且which后面加的完整命令名。有一些命令是bash内建的命令,不能通过which去查出。

2. 文件或者目录名的搜寻

  命令:whereis

  功能:在指定的特殊目录下去搜寻文件或者目录名

  用法:whereis [-blmsu] [文件或者目录名]

  参数:

    -b: 只查询binary的文件

    -l: 列出whereis查询的所有目录

    -m: 只找在说明档manual下面查找

    -s: 只找source来源文件

    -u: 搜寻不在-[bms]项目中的其它特殊文件

  例子1:查找cat命令的相关的文件

    

  例子2:在说明档manual下面查找cat相关的文件

    

  注意点:

    whereis后面接的是完整的文件或者目录名

  命令:locate

  功能:在已建立的数据库里面,查找文件或者目录

  用法:locate -[iclSr] 部分档案名

  参数:

    -i: 忽略大小写

    -c: 不输出文件名,只计算出找到的文件数量

    -l: 后面加输出的行数,例如输出3行就加参数-l 3

    -S: 输出locate所使用的资料库的详细信息

    -r: 后面可接正规表达式的显示法

  例子1:

    查找含有history的文件名或者目录中包含history的文件和目录,并且只显示6行

    

  例子2:显示locate所使用的资料库的信息

    

    这里可以看到资料库在系统里面的目录和文件名

  注意:

    使用locate查询会有一定的限制,因为该命令会到指定的资料库里面去查询,但资料库一般一天才会自动更新一次(各个Linux的distribution会不同),这样新建立文件或者目录就会找不到。我们可以通过命令updatedb去手动更新资料库,updatedb指令会读取/etc/updatedb.conf文件里面的设定,然后再去硬盘里面搜寻文件或者目录,然后更新资料库,这样新建的文件或者目录就可以查询到了。

  命令:find

  功能:搜寻文件或者目录

  用法:find [path] [option] [action]

  参数:

    1. 与时间有关的参数:共有-atime,-ctime和-mtime

     -mtime n: n为数字,表示在n天之前的一天以内修改过内容的文件

     -mtime +n: 显示在n天之前(不含n天本身)被修改过内容的文件

     -mtime -n:  显示在n天之内(含n天本身)被修改过内容的文件

     -newer file:  file为一个存在的文件,显示比file还新的文件

    将系统过去24小时修改过内容的文件或者目录列出

    

     列出root家目录下面比anaconda-ks.cfg文件更新的文件和目录

    

    2. 与使用者或者群组相关的参数

     -uid n: n为数字,n是user的user id,记录在文件/etc/passwd中

     -gid n: n为数字,n是group的group id,记录在文件/etc/shadow中

     -user name: name为user的账户名,例如root

     -group name: name为group的组名,例如users

     -nouser: 寻找文件拥有者不在/etc/passwd中的文件

     -nogroup: 寻找文件群组不在/etc/group中的文件

    查询home目录下面属于kelvin的所有文件和目录

    

    查询根目录下面不属于任何人的档案

    

    3. 与文件权限和名称相关的参数

    -name filename: 搜寻档案名称为filename的文件

    -size [+-]SIZE: 搜寻比SIZE还要大(+)或者小(-)的文件,size的单位有:c: 代表byte,k: 代表kbyte

    -type TYPE: 搜寻文件的类型为TYPE的,类型主要有:一般正规文件(f),装置档案(b,c),目录(d),连结档(l),socket(s)及FIFO(p)

    -perm mode: 搜寻文件权限等于mode的文件

    -perm -mode: 搜寻文件权限必须要全部包括mode权限的文件

    -perm /mode: 搜寻文件权限包括任何一mode的权限的文件

    在根目录下找出passwd的文件

    

    在根目录下查找含有passwd的文件

    

    查找run目录下的socket类型的文件

    

     查询根目录下含有s或者t权限的文件

    

    查询根目录下含有s或者t权限的文件,并且以ls -al的方式显示结果

    

    显示根目录下面大于1M的文件

    

Linux 命令与文件的搜寻的更多相关文章

  1. linux命令截取文件最后n行(所有命令)

    linux命令截取文件最后n行(所有命令) tail -n a.txt > b.txt 联想:系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) una ...

  2. Linux命令:修改文件权限命令chmod、chgrp、chown详解

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权 限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而 ...

  3. linux命令---查找文件中的内容

    linux命令---查找文件中的内容   [yang@localhost ~]$ cat 1.txt |egrep '123456789|second'-------匹配123456789或者seco ...

  4. 详解Linux指令与文件的搜寻

    我们在管理Linux服务器时通常会进行搜索文件及目录操作,下面我们就开始了解一下linux目录结构的相关知识. 博主再奉上一套零基础入门Linux视频,带你从入门到精通 https://www.bil ...

  5. Linux命令之 文件归档管理

    1.文件相关知识 Linux怎样保存文件 数据 -这里数据就是文件的内容 元数据 -在linux系统中,所有与某个文件相关的额外信息都保存在一个叫做i-节点(inode)的节构中 文件名 -文件名保存 ...

  6. Linux命令之文件处理

    文件处理命令 1.dirname命令 dirname命令去除文件名中的非目录部分,仅显示与目录有关的内容.dirname命令读取指定路径名保留最后一个/及其后面的字符,删除其他部分,并写结果到标准输出 ...

  7. Linux命令 比较文件

    cmp [功能说明] 比较文件 #cmp可以比较任何类型的文件,并在标准输出设备上显示文件的第一次不同处的行号和字节号,分别从1开始,但是一般用于比较文本文件 [语法格式] Cmp[参数][文件1][ ...

  8. Linux命令 查看文件内容

    cat [功能说明] 查看文件的内容  #cat本身是一个串接命令,把指定一个或多个源文件的内容,利用>符号重定向到目标文件中,如果不指定重定向文件,则默认在标准输出设备上显示.此时,可以利用c ...

  9. 每天一个linux命令(文件操作):【转载】find命令之exec

    find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec  参数后面跟的是command ...

随机推荐

  1. 基于redis排行榜的实战总结

    前言: 之前写过排行榜的设计和实现, 不同需求其背后的架构和设计模型也不一样. 平台差异, 有的立足于游戏平台, 为多个应用提供服务, 有的仅限于单个游戏.排名范围差异, 有的面向全局排名, 有的只做 ...

  2. Java实验五

    20145113 Java实验五 网络编程及安全 实验内容 对于客户端与服务器端:修改原代码,使其可以实现连续的传消息,并且传送文件. 对于加解密部分: 对于原先的加密只加密"hello w ...

  3. acm数学(转)

    这个东西先放在这吧.做过的以后会用#号标示出来 1.burnside定理,polya计数法    这个大家可以看brudildi的<组合数学>,那本书的这一章写的很详细也很容易理解.最好能 ...

  4. cookie单点登录(跨域访问)

    新近一家公司上来就让做oa,要求嵌入公司现有系统模块,自然而然想到模拟post单点登录对方系统新建单点登陆页面保存session,然现有系统都有用cookie保存用户信息,故保存本地cookie……测 ...

  5. Java中的Object类介绍

    Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类. Object类中的所有方法适用于所有子类 Object中比较常见的方法: ...

  6. 关于C#操作数据库ExecuteNonQuery()的返回值问题

    ) { retValue = AccessCon.ExecuteSql(sql = "update salesData set sellingPrize='" + man.Sell ...

  7. tomcat7 Could not load the Tomcat server configuration at /Servers/Tomcat v7.0 Server at localhost-config. The configuration may be corrupt or incomplete

    参考连接: http://lucasterdev.altervista.org/wordpress/2012/05/12/could-not-load-the-tomcat-server-config ...

  8. 2016HUAS_ACM暑假集训4K - 基础DP

    我不知道怎么用DP,不过DFS挺好用.DFS思路很明显,搜索.记录,如果刚好找到总价值的一半就说明搜索成功. 题目大意:每组6个数,分别表示价值1到6的物品个数.现在问你能不能根据价值均分. Samp ...

  9. 鼠标光标聚焦到可编辑div的最末尾

    <p> <div id='text' contenteditable=true style='width:100px;height:100px;border:1px #ccc;'&g ...

  10. js调用页面打印

    ----------------------调用页面打印-------------------------------- <body> <div id="divPrint& ...