文件查找与与归档

文件查找与与归档

一、文件查找

功能项 命令实例 作用
find find 起始目录 查找类型 查找条件 查找起始目录及所有子目录下的文件及文件夹
fing . -name "hello.txt" 查看当前目录下文件名为hello.txt的文件或文件夹
find . -name "hello" 查看当前目录下文件名包括hello的文件或文件夹
find /home -name "bash" 查找目录/home下文件名包括bash的文件或文件夹
find . -name "*" 查看当前目录下的所有文件或文件夹(作用同ls -R)
find . -name "[h]*" 查看当前目录下以h开头的文件或文件夹
find . -name "[h|f]*" 查看当前目录下所有以h或f开头的文件或文件夹,中括号中“|”可以不用
find . name "[a-z]*" 查看当前目录下所有以小写字母开头的文件或文件夹
find . -name "[A-Z]*" 查看当前目录下所有以大写字母开头的文件或文件夹
find . -name "[a-Z]*" 查看当前目录下所有以字母开头的文件或文件夹
find . -name "[h-w]*" 查看当前目录下所有以h-w开头的文件或文件夹
find . -name "[0-9]*" 查看当前目录下所有以数字开头的文件或文件夹
find . -name "h?llo*" 查看当前目录下所有以h后面带一个字符再加llo开头的文件或文件夹
find . -name "[^a-h]*" 查看当前目录下所有不以a-h开头的文件或文件夹
find . -name '\\' 查看当前目录下所有包含特殊字符\的文件(使用单引号)
find . -perm 777 查找当前目录权限为777的文件或文件夹
find . -path "./test" -prune -o -name "hello" 查找当前目录下除test目录的其他所有目录中包括hello的文件或文件夹
find . -user mary 查看当前目录下文件所有者为mary的文件或文件夹
find . -group dev 查看当前目录下文件或文件夹所在组为dev的内容
find . -mtime -3 查看当前目录下在3天内更新过的文件或文件夹
find . -mtime +3 查看当前目录下在3天前更新过的文件或文件夹
find . -newer hello.txt 查看当前目录下比hello.txt新的文件或文件夹
find . -! -newer hello.txt 查看当前目录下比hello.txt旧的文件或文件夹
find . -type d 查看当前目录下所有文件夹(普通文件类型为f),1)f:普通文件,如文本文件,可执行文件;2)d:目录;3)l:软连接文件;4)c:字符设备,如终端,磁带机等;5)b:块设备,如光盘,硬盘等
find . -size 602c 查看当前目录下文件大小为602字节的文件,可用单位为:c - byte,k -kilobytes, M -Megabytes, G -Gigabytes
find . -name "hello*" -exec ls -l {} \; 查找当前所有以hello开头的文件并将其细节显示出来,如果查找出了目录,那么此时要注意目录会被ls -l列出来
find . -name "hello*" -exec rm {} \; 查找当前目录下所有以hello开头的文件并将其删除
find . -name "hello*" | xargs ls -l 查找当前目录下以hello开头的文件并将其细节显示出来;其中”|“表示管道,前面的输出就是后面的输入

二、内容查找

功能项 命令实例 作用
grep grep [选项] 匹配模式 目标文件 基于行目标文件的内容进行查找
grep ”root“ /etc/passwd 查找到/etc/passed文件中包括root的行
grep -n "root" /etc/passwd 查找到/etc/passwd文件中包括root的行并输出行号
grep "^ma" /etc/passwd 查找ma为行首的行
grep "bash$" /etc/passwd 查找以bash为行尾的行
grep "^[r|d]" /etc/passwd 查找以r或d为行首的行
grep -v "内容" 排除包含”内容“的行
ls | grep test 从ls的输出中过滤出包含test的文件名
grep -r games /etc 在/etc目录下查找所有包含games的文件
grep "^s.*login$" ./passwd 以s开头,并且以Login结尾的行
find与grep结合 find ./ -name "*" | xargs grep word 遍历某个目录下所有文件中包含word的文件,与上一条命令的功能类似
wc wc -l 统计文件行数或输出的个数,-c或-bytes 或-chars只显示Bytes数。-l或-lines显示行数。-w或-words只显示字数,如果不指定参数,则统计所有信息

三、文件归档压缩

功能项 命令实例 作用
tar /gzip tar -cvf hello.tar hello.txt 将hello.txt归档并命名为hello.tar
tar -cvf test.tar /opt/test 将目录/opt/test归档并命名为test.tar
tar -tf test.tar 将归档文件tset.tar中的文件显示出来
tar -xvf test.tar 提取归档文件中的内容
gzip hello.tar 将归档文件hello.tar压缩为hello.tar.gzip
gizp -d hello.tar.gz 解压缩文件为hello.tar
tar -zcvf hello.tar.gz hello.txt 将hello.txt归档并压缩hello.tar.gz
tar -axvf hello.tar.gz 解压缩
zip / unzip zip hello.zip hello.txt 将hello.txt压缩并命名为hello.zip
zip -r test.zip /opt/test 将/opt/test目录压缩
unzip -v hello.zip 查看压缩文件hello.zip中的文件信息
unzip hello.zip 解压缩hello.zip
上一篇
下一篇