1、文件的查找和搜索
可执行文件的搜索:which 、whereis
locate搜索文件
find搜索文件
 
 
 
1.1可执行文件的搜索
      在Linux系统中,有成百上千个指令,不同的指令对应的指令文件,又放在不同的目录里。如果快速地查找指令的绝对路径是相当重要的。
      which <指令>
            显示一个指令的完整路径与别名。
      whereis <指令>
            搜索一个指令的完整路径以及其帮助文件。
 
[root@natsha ~]# which ls
alias ls='ls --color=auto'
        /bin/ls
 
[root@natsha ~]# whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz
 
 
1.2locate搜索
    在Linux系统中存在一个数据库,在这个数据库中保存了系统中所有文件的绝对路径。用户就可以使用下面的命令来查询文件的完整路径。
    语法:locate    [关键字]
    这个指令会将文件名或目录名中包含有此关键字的路径全部显示出来。
          用户刚创建的文件系统不会立即加入数据库中,用户可以通过updatedb指令来手动的更新这个 数据库   
 
 
 
 
1.3Find查询的描述
     find是一个相当重要的查询文件绝对路径的指令
     语法:find  <路径>  <选项>  [表达式]
     find查找文件的特点:
         从指定路径下递归向下搜索文件。
         支持按照各种条件方式搜索。
         支持对搜索得到的文件再进一步的使用指令操作(例如:删除、统计大小、复制等)
 
 
Find条件查询
      find <路径>  <参数>  [表达式]
      重要选项:
           -name    根据文件名寻找文件
           -user    根据文件拥有者寻找文件
           -group    根据文件所属组寻找文件
           -perm    根据文件权限寻找文件
           -size    根据文件大小寻找文件[±Sizek]
           -type    根据文件类型寻找文件,常见类型有:f(普通文件) 、c(字符设备文件)、b(块设备文件)     、l(连接文件)、d(目录)
           -o        表达式或
           -and    表达式与
           -not      表达式非
 
对查找到的文件进一步操作
     语法
       find [路径]  [参数] [表达式]  -exec  指令 {}  \;
            { }代表find找到的文件
            \ 转意
            ;表示本行指令结束
            例:find /etc –name “host*” –exec du –h  {}  \;
 
(1)使用-name选项
使用文件名模式来匹配文件,文件名要放在引号中。
在当前目录和子目录中查找所有的'*.log'文件:
find   .    -name   "*.log"    -print
 
(2)按文件属主查找文件
find    /etc   -user   natasha   -print
 
(3)按更改时间或者访问时间等查找文件。
在根下查找更改时间在5日以内的文件,可以用:
find     /     -mtime     -5      -print
 
在/var/adm目录下查找更改时间在3日以前的文件,可以用:
find     /var/adm     -mtime    +3    -print
 
(4)使用type选项
在/etc 目录下查找所有的目录
find   /etc   -type     d     -print
在当前目录下查找除目录以外的所有类型的文件:
find     .      !-type    d    -print
 
(5)使用size选项
按文件大小来查找。
在当前目录下查找文件长度大于1M的文件:
find   .   -size    +1M    -print
在/home/apache目录下查找文件长度恰好为100字节的文件:
find   /home/apache     -size    100c    -print
 
 
(6)使用depth选项
首先匹配所有的文件再在子目录中查找。
从文件系统的根目录开始,查找一个名为CON.FILE文件。
find    /   -name    "CON.FILE  "    -depth    -print
 
 
(7)找出所有所有者是natasha的文件,并把他们拷贝到/root/found目录。
mkdir   /root/found
find   /  -user natasha –exec  cp –rf {}  /root/found/   \;
 
 
2、文件的压缩与解压缩
        文件的压缩与解压指令
        gz与.bz系列指令
            - gzip,gunzip
               -- Linux标准压缩工具
               -- 对文本文件可以达到75%的压缩率
               -- 例:
                    gzip man.config
                    gunzip man.config.gz
            - bzip2,bunzip2
                --更新的Linux压缩工具
                --比gzip有着更高的压缩率
                  例:
                    bzip2 httpd.conf.bk
                    bunzip2 httpd.conf.bk.bz2
 
 
不解压显示压缩文件的内容:
     对于用gzip压缩的文件,有一系列以z开头的指令,可以在不经解压的情况下,就直接显示文件的内容
           zcat:直接显示压缩文件的内容
           zless:直接逐行显示压缩文件的内容
 
    对于用bzip压缩的文件,也有一系列以bz开头的文件。
           bzcat:直接显示压缩文件的内容
           bzless:直接逐行显示压缩文件的内容
 
 
 
3、tar指令
 
常用选项:
c                创建包
v                将过程输出
x                解出包
t                显示tar文件的内容
r                在tar文件尾部追加文件
z                用gzip压缩或解压文件
j                用bzip压缩或解压文件
f                指定备份文件名
-T                   从指定的文件中读取欲打包的文件路径
-C                   将文件备份到指定的目录
 
 
tar支持在备份同时压缩备份文件,或在解出备份同时解压缩。
备份时压缩
#tar jcvf   test.tar.bz  /home/test    (  j:使用bzip2 )
#tar zcvf   test.tar.gz  /home/test ( z:使用gzip )
 #tar -cvf /tmp/etc.tar    /etc    仅打包,不压缩
# tar -zcvf /tmp/etc.tar.gz     /etc    打包后,以 gzip 压缩
# tar -jcvf   /tmp/etc.tar.bz2  /etc  打包后,以 bzip2 压缩
 
在参数 f 之后的文件档名是自己取的,习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file 
# 如果加 j 参数,则以 .tar.bz2 来作为压缩过的文件名
 
解压备份文件
#tar jxvf   test.tar.bz   -C  /tmp (j:使用bzip2 )
#tar zxvf   test.tar.gz  -C  /tmp(z:使用gzip )
 
备份 /home, /etc ,但不要 /home/dmtsai
 tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
 

Linux中文件查找,压缩和打包指令的更多相关文章

  1. Linux下文件的压缩与打包

    一.Linux下常见的文件压缩命令: 在Linux的环境中,压缩文件的扩展名大多是:『*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2』,为什么会有这样的扩展名呢? 这 ...

  2. linux中文件查找、whereis、which、输出命令

    1.文件查找(find):find是最常⻅和最强⼤的查找命令 格式:find / -name  文件名,比如:find / -name mysql.  (1).模糊查找:*是代表所有的,?是代表⼀个字 ...

  3. 【linux相识相知】压缩与打包

    我们日常使用window的时候,经常会用到压缩与解压缩,如果要压缩一个文件,右击选择[添加到压缩文件],解压缩则右击选择[解压到当前文件夹],“点点点”就能完成.但是在一个没有装图形化界面的linux ...

  4. linux(3)磁盘与文件系统管理/查看硬盘、内存空间/文件系统的操作/ 文件的压缩和打包

    一.磁盘与文件系统管理 1.分区与文件系统分区:记录每一个分区的开始柱面和结束柱面主引导区(master boot recorder):记录分区的数据,记录硬盘里所有的分区信息分区划分好后,要将分区格 ...

  5. linux中文件压缩介绍

    原文内容来自于LZ(楼主)的印象笔记,如出现排版异常或图片丢失等问题,可查看当前链接:https://app.yinxiang.com/shard/s17/nl/19391737/1c62bb7f-f ...

  6. linux文件压缩与文件夹压缩(打包)

    目录 一:linux文件压缩 1.linux常见的压缩包有哪些? 2.bzip压缩(文件) 二:打包(文件夹压缩) 1.打包命令 2.参数 3.参数解析(实战) 4.注意事项 简介: win中的压缩包 ...

  7. linux中tar及压缩解压命令用法

    把常用的tar解压命令总结下,当作备忘: tar 命令可以为Linux的文件和目录创建档案.利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向 档案中加入新的文件.t ...

  8. linux中的常用压缩与解压缩命令

    linux中常用的压缩格式有   .zip   .gz   .bz2   .tar.gz   .tar.bz2 一..zip 1.命令格式 zip 压缩文件名 源文件名         (压缩文件到当 ...

  9. LSOF查看linux中文件打开情况

    如何查看linux中文件打开情况 前言 我们都知道,在linux下,“一切皆文件”,因此有时候查看文件的打开情况,就显得格外重要,而这里有一个命令能够在这件事上很好的帮助我们-它就是lsof. lin ...

随机推荐

  1. HTML技巧:怎样禁止图片拖动复制

    用jQuery实现代码: <script> var imgs=$("img"); imgs.on("contextmenu",function(){ ...

  2. Firefox63以后 禁止自动更新方式

    参考:https://bbs.kafan.cn/thread-2135160-1-1.html 63版以后在prefs.js文件末尾加代码来禁止自动更新的方式失效 新方式: 使用DisableAppU ...

  3. Android6.0运行时权限的处理Demo

    MainActivity.java package com.loaderman.permissionsdemo; import android.Manifest; import android.con ...

  4. 使用matlab画半透明椭圆

    先上最终效果图: 本来是想直接用scatter和alpha来画的,结果在尝试以下代码后,发现无法显示透明效果 scatter(rand(1000,1),rand(1000,1), 'filled'); ...

  5. LoadRunner参数化使用mysql数据源

    因为默认是没有mysql驱动的,因此需要在网上下载一个mysql驱动 1. 在网上下载一个是MYSQL数据库的ODBC驱动程序:mysql-connector-odbc-3.51.20-win32.e ...

  6. django 通过模型类操作数据表(基础增删改查)

    进入项目shell的命令: python manage.py shell 以下为在相互shell终端中演示的例子: 首先导入模型类:(from 应用名.models import 类名) from b ...

  7. SAS数据挖掘实战篇【六】

    SAS数据挖掘实战篇[六] 6.3  决策树 决策树主要用来描述将数据划分为不同组的规则.第一条规则首先将整个数据集划分为不同大小的 子集,然后将另外的规则应用在子数据集中,数据集不同相应的规则也不同 ...

  8. Pandas中关于 loc \ iloc 用法的理解

    转载至:https://blog.csdn.net/w_weiying/article/details/81411257 loc函数:通过行索引 "Index" 中的具体值来取行数 ...

  9. 【VS开发】使用WinPcap编程(4)——把网络数据包存储到一个文件中

    这里用到的数据结构是pcap_dumper_t,这也是一个相当于文件描述符的东西,我们在用的时候先指定pcap_dumper_t *dumpfp; 使用两个函数来存储网络数据,一个是pcap_dump ...

  10. 【VS开发】动态创建ActiveX控件

    bool CCollectDataDlgDlg::CreateMyCtrl(LPRECT lpRect, UINT nID, CWnd *pParent) {  CLSID clsid;  wstri ...