资讯动态

麒麟操作系统 | 文件查找与归档压缩

发布时间:2026/8/4 6:44:34 来源:尧图企业网站定制
红帽认证、麒麟认证与 K8S 该如何选择先来回顾麒麟往期内容麒麟操作系统安装流程安装包麒麟系统安装后初始化配置指南麒麟操作系统 | shell 和终端、环境变量麒麟操作系统 | 常用命令及脚本1麒麟操作系统 | 常用命令及脚本2麒麟操作系统 | 用户和组管理麒麟操作系统 | 文件和目录概述麒麟操作系统 | 文件与目录的权限麒麟操作系统 | Linux系统中的链接麒麟操作系统 | VIM文本编辑器一考双证麒麟认证 麒麟软件原厂 工信部教考微思本章学习目标掌握命令的查询方法掌握文件的查询方法。掌握文件内搜索内容的方法掌握文件归档与压缩文章目录01 文件查找与处理02 归档与压缩01 文件查找与处理一、查找文件1、which 命令作用查找文件which 指令会在环境变量 $PATH 设置的目录里查找符合条件的文件。语法结构which [文件...]常见命令选项-n文件名长度指定文件名长度指定的长度必须大于或等于所有文件中最长的文件名。-p文件名长度与-n参数相同但此处的文件名长度包含了文件的路径。-w指定输出时栏位的宽度。-V显示版本信息。2、whereis 命令作用查找文件该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件或是帮助文件。语法结构whereis [-bfmsu][-B 目录...][-M 目录...][-S 目录...][文件...]常见命令选项-b只查找二进制文件-B目录只在设置的目录下查找二进制文件-f不显示文件名前的路径名称-m只查找说明文件-M目录只在设置的目录下查找说明文件-s只查找原始代码文件-S目录只在设置的目录下查找原始代码文件-u查找不包含指定类型的文件一、find 命令作用用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时不设置任何参数则 find 命令将在当前目录下查找子目录与文件并且将查找到的子目录和文件全部进行显示。语法结构find path -option [ -print ] [ -exec | -ok command ] {} \;常见命令选项-mount, -xdev只检查和指定目录在同一个文件系统下的文件避免列出其它文件系统中的文件-amin n在过去 n 分钟内被读取过-anewer file比文件 file 更晚被读取过的文件-atime n在过去 n 天内被读取过的文件-cmin n在过去 n 分钟内被修改过-cnewer file比文件 file 更新的文件-ctime n在过去 n 天内创建的文件-mtime n在过去 n 天内修改过的文件-empty空的文件-gid n/-group namegid 是 n 或是组名称为 name-ipath p, -path p路径名称符合 p 的文件ipath 会忽略大小写-name name, -iname name文件名称符合 name 的文件iname 忽略大小写-size n文件大小为 n 单位b区块c字节k千字节w字-type c文件类型是 c 的文件d目录c字符设备文件b块设备文件p管道f普通文件l符号链接ssocket-pid n进程ID是 n 的文件应用案例将当前目录及其子目录下所有后缀为.c的文件列出find . -name ”*.c”将当前目录及其子目录中的所有普通文件列出find . -type f将当前目录及其子目录下所有最近 20 天内更新过的文件列出find . -ctime 20查找/var/log目录中更改时间在 7 日以前的普通文件并在删除之前询问find /var/log -type f -mtime 7 -ok rm {} \;查找当前目录中文件属主拥有读、写权限同组用户与其他用户拥有读权限的文件find . -type f -perm 644 -exec ls -l {} \;查找系统中所有长度为 0 的普通文件并展示完整路径find / -type f -size 0 -exec ls -l {} \;一、grep 命令grep 指令用于查找数据源中包含指定字符串的行默认输出到屏幕。数据源可以是命令输出也可以是指定的文件。grep 支持正则表达式能够更加快捷、方便的检索数据。语法结构grep [OPTION...] keys [FILE...]常见命令选项-i不区分大小写-v查找不包含指定内容的行反向选择-w按完整单词搜索-n显示匹配内容所在行号-A num显示匹配行以及后面 num 行例-A 5-B num显示匹配行以及前面 num 行-C num显示匹配行前后各 num 行-e使用基础正则匹配-E使用扩展正则匹配^key匹配以关键字开头的行key$匹配以关键字结尾的行^$匹配空行--colorauto检索到的关键词高亮着色显示应用案例忽略大小写匹配包含 root 的行grep -i root /etc/passwd精确匹配 ftp 完整单词grep -w ftp /etc/passwd只打印匹配到的关键字 ftp不输出整行grep -wo ftp /etc/passwd打印匹配 root 关键字的行号grep -n root /etc/passwd忽略大小写匹配包含 root 的行附带行号grep -ni root /etc/passwd忽略大小写统计包含 root 的总行数grep -nic root /etc/passwd忽略大小写匹配以 root 开头的行grep -i ^root /etc/passwd匹配以 bash 结尾的行grep bash$ /etc/passwd匹配空行并打印行号grep -n ^$ /etc/passwd匹配以号开头的注释行grep ^# /etc/vsftpd/vsftpd.conf匹配不以号开头的有效配置行过滤注释grep -v ^# /etc/vsftpd/vsftpd.conf匹配包含 mail 关键字及其后5行grep -A 5 mail /etc/passwd匹配包含 mail 关键字及其前5行grep -B 5 mail /etc/passwd匹配包含 mail 关键字及其前后各5行grep -C 5 mail /etc/passwd一、wc 命令wc 指令可以计算文件的字节数、字数、行数。若不指定文件名称或是所给予的文件名为-则 wc 指令会从标准输入设备读取数据。语法结构wc [-clw][--help][--version][文件...]命令选项-c, --bytes输出字节数统计-m, --chars输出字符数统计-l, --lines输出行数统计--files0-from文件从指定文件读取以空字符NUL终止的名称如果该文件被指定为-则从标准输入读文件名-L, --max-line-length显示最长行的长度-w, --words统计单词数量--help显示帮助信息并退出--version显示版本信息并退出应用案例统计 testfile 文件整体信息wc testfile输出示例3 92 598 testfile释义文件行数为 3、单词数 92、字节数 598一、sort 命令将文件的每一行作为一个单位从首字符向后依次按 ASCII 码值进行比较最后将它们按升序输出。语法结构sort [options] [filename]常见命令选项-u去除重复行-r降序排列默认升序-o将排序结果输出到文件中类似重定向符号-n按照数字排序默认按字符排序-t指定分隔符-k指定按照第N列排序-b忽略行首前导空格-R随机排序每次执行结果不同应用案例按照用户 uid 对文件 1.txt 升序排列sort -n -t: -k3 1.txt按照用户 uid 对文件 1.txt 降序排列sort -nr -t: -k3 1.txt对文件 2.txt 数字排序并去除重复行sort -nu 2.txt数字排序并将结果保存到文件sort -n 2.txt -o 3.txt一、uniq 命令去除连续重复行注意uniq 仅对相邻连续重复行生效分散的重复行需要先使用sort排序。语法结构uniq [options] [filename]常见命令选项-i忽略大小写-c统计重复行出现次数-d只显示重复行应用案例对文件 2.txt 去除连续重复行uniq 2.txt提取文件 2.txt 中重复的行uniq -d 2.txt提取文件 2.txt 中重复的行并统计重复次数uniq -dc 2.txt一、diff 命令用于比较文件的差异以逐行的方式比较文本文件的异同处。如果指定要比较目录则 diff 会比较目录中相同文件名的文件但不会比较其中子目录。语法结构diff [选项]... 文件1或目录1 文件2或目录2常见命令选项-行数指定要显示多少行的文本。此参数必须与-c或-u参数一并使用-a, --textdiff 预设只会逐行比较文本文件-b, --ignore-space-change不检查空格字符的不同-B, --ignore-blank-lines不检查空白行-c显示全部内容并标出不同之处-C行数, --context行数与执行-c -行数指令相同-d, --minimal使用不同的演算法以较小的单位来做比较-D巨集名称, --ifdef巨集名称此参数的输出格式可用于前置处理器巨集-e, --ed此参数的输出格式可用于 ed 的 script 文件-f, --forward-ed输出的格式类似 ed 的 script 文件但按照原来文件的顺序来显示不同处-H, --speed-large-files比较大文件时可加快速度-I字符串, --ignore-matching-lines字符串若两个文件存在差异行且该行均包含指定字符串则忽略该处差异-i, --ignore-case不检查大小写的不同-l, --paginate将结果交由 pr 程序来分页-n, --rcs将比较结果以 RCS 的格式来显示-N, --new-file比较目录时若文件仅存在某个目录默认提示Only in使用-N会将该文件与空文件对比-p比较C语言代码文件时显示差异所在的函数名称-P, --unidirectional-new-file与-N类似仅第二个目录独有文件时和空文件对比-q, --brief仅显示有无差异不显示详细的信息-r, --recursive递归比较子目录中的文件-s, --report-identical-files若没有发现任何差异仍然显示信息-S文件, --starting-file文件在比较目录时从指定的文件开始比较-t, --expand-tabs在输出时将 tab 字符展开-T, --initial-tab在每行前面加上 tab 字符以便对齐-u, -U列数, --unified列数以合并的方式来显示文件内容的不同-v, --version显示版本信息-w, --ignore-all-space忽略全部的空格字符-W宽度, --width宽度搭配-y参数时指定展示栏宽-x名称, --exclude名称不比较指定的文件或目录-X文件, --exclude-from文件读取文件内名单排除名单中的文件/目录不对比-y, --side-by-side以并列的方式显示文件的异同之处--help显示帮助--left-column搭配-y内容相同行只在左侧栏展示--suppress-common-lines搭配-y仅输出存在差异的行应用案例diff file1 file2输出示例3c3 2022-03--- 2021-038c8 2021-07--- 2021-0811,12d10 2021-11 2021-12释义3c3 和 8c8 表示 file1 和 file2 在第3行、第8行内容存在修改11,12d10 代表 file1 比 file2 多出第11、12两行。输出符号说明默认模式代表取自**第一个文件file1**的行代表取自**第二个文件file2**的行a新增add、c修改change、d删除delete并列模式(-y)符号说明|前后两个文件该行内容不相同第二个文件相比第一个文件缺少该行第二个文件相比第一个文件多出该行02 文件归档与压缩银河麒麟操作系统常用的压缩与解压缩命令有tar、gzip、gunzip、bzip2、bunzip2、 compress 、uncompress、 zip、 unzip、rar、unrar 等。一、tar 命令介绍最常用的打包命令是 tar使用 tar 程序打出来的包我们常称为 tar 包tar 包文件名通常都是以 .tar 结尾。为了方便用户在打包解包的同时可以压缩或解压文件tar 提供了一种特殊的功能tar 可以在打包或解包的同时调用其它的压缩程序比如调用 gzip、bzip2 等。二、tar 命令使用用来建立、还原备份文件的工具程序它可以添加、解开备份文件内的文件。语法结构tar [选项...] [FILE]...常见命令选项-c创建新的备份文件。如果用户想备份一个目录或是一些文件就要选择这个选项。-x从备份文件中释放文件。-r把要存档的文件追加到备份文件的末尾。-f使用备份文件或设备这个选项通常是必选的。-v详细报告 tar 处理的文件信息。如无此选项tar 不输出文件信息。-z用 gzip 来压缩/解压缩文件添加该选项后可对备份文件进行gzip压缩。-j用 bzip2 来压缩/解压缩文件。-Z调用 compress 程序进行压缩/解压缩。应用案例1、tar 调用 gzipgzip 是 GNU 组织开发的一个压缩程序.gz 结尾的文件就是 gzip 压缩的结果。与 gzip 相对的解压程序是 gunzip。tar 中使用 -z 参数调用 gzip。示例tar -czf all.tar.gz *.jpg这条命令是将所有 .jpg 文件打成一个 tar 包并且使用 gzip 压缩生成压缩包 all.tar.gz。tar -xzf all.tar.gz这条命令用于解压 all.tar.gz 压缩包。2、tar 调用 bzip2bzip2 是压缩能力更强的压缩程序.bz2 结尾的文件就是 bzip2 压缩的结果。与 bzip2 相对的解压程序是 bunzip2。tar 中使用 -j 参数调用 bzip2。示例tar -cjf all.tar.bz2 *.jpg这条命令是将所有 .jpg 文件打成一个 tar 包并且使用 bzip2 压缩生成压缩包 all.tar.bz2。tar -xjf all.tar.bz2这条命令用于解压 all.tar.bz2 压缩包。3、tar 调用 compresscompress 也是一款压缩程序目前使用频率低于 gzip 和 bzip2。.Z 结尾的文件为 compress 压缩产物。对应的解压程序是 uncompress。tar 使用 -Z 参数调用 compress。示例tar -cZf all.tar.Z *.jpg这条命令是将所有 .jpg 文件打成一个 tar 包并且使用 compress 压缩生成压缩包 all.tar.Z。tar -xZf all.tar.Z这条命令用于解压 all.tar.Z 压缩包。统一说明参数f后面紧跟压缩包名称建议将 -f 写在所有选项最后养成规范写法。— Linux文章推荐 —【资料领取】200个Linux常用命令手册《鸟哥Linux私房菜》全新完整中文版PDFRHCE 证书价值解析薪资水平与热门招聘企业分析linux运维必备100道常见面试题超强linux学习笔记值得一看(附PDF下载)红红帽认证、麒麟认证与 K8S 该如何选择5 种 Linux 安装包管理工具中文手册抓紧看

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价