Linux下搜索文件find、which、whereis、locate:

  - which 寻找“执行文件”

    - -a 将所有可找到的命令均列出,而不仅仅列出第一个找到的命令名称

  - whereis 寻找特定文件   whereis [-bmsu] 文件或目录

    - -b : 只找二进制文件

    - -m : 只找在帮助文件manual路径下的文件

    - -s :  只找源文件

    - -u :  没有帮助文件的文件

  - locate [filename]

    -- 例:  locate passwd

  - find,搜索文件及目录。在linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而“find”命令可以解决上述问题 (鸟哥linux第二版 p137页)

  - 在特定的目录下搜索并显示指定名称的文件和目录

    【案例】find / -name man:意思是说从根目录开始搜索名称为man的文件或目录

  - 搜索一段时间内被存取/变更的文件或目录

    【案例】find /home -amin -10:十分钟内存取的文件或目录

    【案例】find /home -atime -10:十小时内存取的文件或目录

    【案例】find /home -cmin -10:十分钟内更改过的文件或目录

    【案例】find /home -ctime +10:十小时前更改过的文件或目录

  - 搜索指定大小的文件

    【案例】find /home -size +10k:意思是说查找/home目录下大小为10k的文件

  - 重定向命令

    - ls -l > a.txt,列表的内容写入文件a.txt中(覆盖写)

    - ls -al >> aa.txt,列表的内容追加到文件aa.txt的末尾

    - 从文件中输入信息:database_program < database_data

    - en,查看环境变量

  - 压缩和解压

    - 以zip和unzip处理.zip文件

    - zip命令的基本使用方法

    - zip file.zip *:zip后接压缩后的文件名,在它的后面输入要压缩的文件即可

  - 压缩后,自动删除原文件

    【案例】zip m file.zip to.txt:把to.txt文件压缩成file.zip文件,to.txt会自动删除的

  - 将子目录一起压缩

    【案例】zip ‐r file.zip *:将当前目录下的子目录一起压缩

  - 忽略子目录的内容

    【案例】zip ‐j file.zip *

  - 将已压缩的或没有必要压缩的文件去掉

    【案例】zip ‐n .mpg: .jpg: .gif:第一种文件中间要用“:”分开

  

  - 压缩某一日之后的文件

    【案例】zip ‐t 102002 file.zip:将当前目录下在2002年10月20日之后文件压缩

    

  - 不压缩链接文件的原文件

    【案例】zip ‐y file.zip *

  - 压缩率问题,-1~-9,其中-9的压缩率最高

    【案例】zip -9 file.zip *

  - 将不需要压缩的文件排除在外

    【案例】zip file.zip * -x file2.txt:在压缩时,将当前目录内的file2.txt文件排除在外

  - 以unzip命令进行.zip文件的解压缩

  - 直接解压缩文件

    【案例】unzip file.zip

  

  - 排除不需要解压缩的文件

    【案例】unzip file.zip ‐x file2:除了file2文件外,其他的文件都解压缩

  

  - 查看压缩包的内容

  【案例】unzip ‐Z file.zip:查看file.zip压缩包的内容,也可以使用“-l”“-v”来查看压缩包的内容

    - 以gzip和gunzip处理.gz文件

  - chattr和lsattr命令详解

  - chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现。同样-D检查压缩文件中的错误的功能,需要2.5.19    以上内核才能支持。另外,通过chattr命令修改属性能够提高系统的安全 性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var
    目录。

  -  lsattr比较简单,只是显示文件的属性
    【案例】 [root]# lsattr

        ----ia---j--- ./lsattr_test

        这两个命令是用来改变文件、目录属性的,和chmod,ls这些命令相比,chmod只是改变文件的读写、执行权限,更底层的属性控制是由chattr来改变的。

  - chattr命令的用法:chattr [+ - =] [ASacdistu]

    最关键的是在[mode]部分,[mode]部分是由+-=和[ASacDdIijsTtu]这些字符组合的,这部分是用来控制文件的属性。

  

  - + :在原有参数设定基础上,追加参数。

  - - :在原有参数设定基础上,移除参数。

  - = :更新为指定参数设定。

  - A:文件或目录的 atime (access time)不可被修改(modified), 可以有效预防例如手提电脑磁盘I/O错误的发生。

  - S:硬盘I/O同步选项,功能类似sync。

  - a:即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全,只有root才能设定这个属性。

  - c:即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作。

  - d:即no dump,设定文件不能成为dump程序的备份目标。

  - i:设定文件不能被删除、改名、设定链接关系,同时不能写入或新增内容。i参数对于文件 系统的安全设置有很大帮助。

  - j:即journal,设定此参数使得当通过mount参数:data=ordered 或者 data=writeback 挂 载的文件系统,文件在写入时会先被记录(在journal中)。如果filesystem被设定参数        为 data=journal,则该参数自动失效。

  - s:保密性地删除文件或目录,即硬盘空间被全部收回。

  - u:与s相反,当设定为u时,数据内容其实还存在磁盘中,可以用于undeletion.

  各参数选项中常用到的是a和i。a选项强制只可添加不可删除,多用于日志系统的安全设定。而i是更为严格的安全设定,只有superuser (root) 或具有CAP_LINUX_IMMUTABLE处理能    力(标识)的进程能够施加该选项。

  【案例】1、用chattr命令防止系统中某个关键文件被修改

  # chattr +i /etc/fstab

  然后试一下rm mv rename等命令操作于该文件,都是得到Operation not permitted 的结果【案例】2、让某个文件只能往里面追加内容,不能删除,一些日志文件适用于这种操作    # chattr +a /data1/user_act.log

Linux下搜索文件find、which、whereis、locate的更多相关文章

  1. 在Linux下搜索文件

    在Linux下搜索文件============================= 1,which 查找可执行文件的绝对路径 [root@aminglinux ~]# which cat /bin/ca ...

  2. Linux下搜索文件

    使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索.搜索文件的命令为"find":"locate":"whereis& ...

  3. linux常用搜索文件命令

    使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索.搜索文件的命令为”find“:”locate“:”whereis“:”which“:”type“ 方法/步骤     ...

  4. [转帖]linux下查找文件及查找包含指定内容的文件常用命令。

    linux下查找文件及查找包含指定内容的文件常用命令. https://blog.csdn.net/yangyu19910407/article/details/18266821 最简单的查找 fin ...

  5. linux下.run文件的安装与卸载

    linux下.run文件的安装与卸载   .run文件的安装很简单,只需要为该文件增加可执行属性,即可执行安装 以 virtualbox 的安装文件 virtualbox-3.1.6-59338-Li ...

  6. 在Linux下查找文件内容包含某个特定字符串的文件

    如何在Linux下查找文件内容包含某个特定字符串的文件? 我的目录下面有test1和test2两个文件夹,里面都含有很多文件,其中test2里面还包含一个test文件夹 我想请问的是,如何通过查找关键 ...

  7. Linux下Python 文件内容替换脚本

    Linux下Python 文件替换脚本 import sys,os if len(sys.argv)<=4: old_text,new_text = sys.argv[1],sys.argv[2 ...

  8. Linux下的文件及文件后缀名

    Linux下的文件及文件后缀名 2013-03-14 15:34 6969人阅读 评论(0) 收藏 举报 ++++++++++++++++++++++++++++++++++++++正文+++++++ ...

  9. Linux 下查看文件字符编码和转换编码

    Linux 下查看文件字符编码和转换编码 如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linu ...

随机推荐

  1. [物理题+枚举] hdu 4445 Crazy Tank

    题意: 给你N个炮弹的发射速度,以及炮台高度H和L1,R1,L2,R2. 问任选发射角度.最多能有几个炮弹在不打入L2~R2的情况下打入L1~R1 注意:区间有可能重叠. 思路: 物理题,发现单纯的依 ...

  2. 从cocos2dx到cocos2dhtml5的不同之处

    首先cocos2dhtml5使用javascript编程, 严格区分大写和小写. 1.新建cocos2dhtml5项目. 直接复制引擎自带的helloworld.改一下目录名字就可以. 2.新增js文 ...

  3. Java环境变量设置辅助工具

    安装完JDK之后,很容易忘了设置系统的环境变.最近发现一个设置JDK的小工具,非常简单,推荐给大家: 下载地址:http://files.cnblogs.com/eastson/JavaPathSet ...

  4. JavaScript-深入理解JavaScript(一、预编译和执行过程)

    一.预解析 JavaScript 在执行前会进行类似“预解析”的操作:首先会创建一个在当前执行环境下的活动对象, 并将那些用 var 声明的变量.定义的函数设置为活动对象的属性, 但是此时这些变量的赋 ...

  5. requests.exceptions.MissingSchema: Invalid URL 'xxxxxxxxxxxxx': No schema supplied. Perhaps you meant xxxxxxxxxxxxx

    import requests session = requests.session() carProposalUrl = "www.caaaa.com.cn/aaaa/aaaaa/carP ...

  6. JVM虚拟机(二):堆、栈、方法区概念区别

    Java 堆 Java堆是和Java应用程序关系最密切的内存空间,几乎所有的对象都放在其中,并且Java堆完全是自动化管理,通过垃圾收集机制,垃圾对象会自动清理,不需自己去释放. 根据垃圾回收机制的不 ...

  7. 反射学习1、反射机制的介绍和基本的API的使用

    关于动态语言: 一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”.从这个观点看,Perl,Python,Ruby是动态语言,C+ ...

  8. 李洪强iOS经典面试题30-一个区分度很大的面试题

    李洪强iOS经典面试题30-一个区分度很大的面试题 考察一个面试者基础咋样,基本上问一个 @property 就够了: @property 后面可以有哪些修饰符? 线程安全的: atomic,nona ...

  9. js模块化规范AMD、CMD、CommonJS...

    1. AMD 1.1 什么是AMD? AMD 英文名 Asynchronous Module Definition ,中文名 异步模块定义 .这是一个浏览器模块化开发的规范. 由于浏览器环境执行环境的 ...

  10. linux学习笔记22---命令diff和diff3

    diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的 ...