Linux就该这么学--命令集合6(打包压缩文件、文件查询搜索命令)

时间:2022-06-19 07:27:45

1.tar命令用于对文件打包压缩或解压:(tar [选项] [文件])

打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名

解压并展开压缩包:tar -xzvf 压缩包名.tar.gz

附录:

-c  创建压缩文件

-x  解开压缩文件

-t  查看压缩包内有哪些文件

-z  用Gzip压缩或解压

-j  用bzip2压缩或解压

-v  显示压缩或解压的过程

-f  目标文件名

-p  保留原始的权限与属性

-C  指定解压到的目录

-P  使用绝对路径来压缩

 

2.grep命令用于对文本进行搜索:(grep [选项] [文件])

查询系统中不允许登录的用户:

grep /sbin/nologin /etc/passwd

 Linux就该这么学--命令集合6(打包压缩文件、文件查询搜索命令)

查询系统中不允许登录的用户并输出到jacun.txt:

grep /sbin/nologin /etc/passwd >> /home/jacun.txt

 附录:

-b  将可执行文件(binary)当作文本文件(text)来搜索

-c  仅显示找到的次数

-i  忽略大小写

-n  显示行号

-v  反向选择---仅列出没有“关键词”的行

 

3.find命令用于查找文件:(find [查找路径] 寻找条件 操作)

常用的搜索路径:~ 代表用户的家目录; .代表当前目录; /代表根目录

搜索在/etc/中所有以host开头的文件:

find /etc -name "host*" -print

 Linux就该这么学--命令集合6(打包压缩文件、文件查询搜索命令)

 

搜索整个系统中所有包含SUID的文件:(因SUID的数字表示法是4,而减号表示只要包含即可)

find / -perm -4000 -print

 Linux就该这么学--命令集合6(打包压缩文件、文件查询搜索命令)

 

找出用户ftpuser的文件并复制到/root/ftpuserfile目录:

重点是“-exec {} \:” 其中的{}代表find命令搜索出的文件,记住结尾必须是\:

find / -user ftpuser -exec cp arf {} /root/ftpuserfile/ \:

 

附录:

 -name  匹配名称

-perm  匹配权限(mode为完全匹配,-mode为包含即可)

-user  匹配所有者

-group  匹配所有组

-mtime -n +n  匹配修改内容的时间(-n指n天以内,+n指n天以前)

-atime -n +n  匹配访问文件的时间(-n指n天以内,+n指n天以前)

-ctime -n +n  匹配修改权限的时间(-n指n天以内,+n指n天以前)

-nouser  匹配无所有者的文件

-nogroup  匹配无所有组的文件

-newer f1 !f2  匹配比文件f1新却比f2旧的文件

--type b/d/c/p/l/f  匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)

--size  匹配文件的大小(+50k查找超过50k的文件,而-50k则代表查找小于50k的文件)

-prune  忽略某个目录

--exec {} \:  后面可对接对搜索到结果可进一步处理的命令