grep(egrep)命令和find命令在Linux下的具体用法

grep(egrep)

grep(egrep)用来在一个文本文件(ASCII,字符串)中查找一个特定的字符串
egrep是用扩展的正则表达式去进行匹配查找。

语法:

grep(egrep) options [正则表达式] filelist

在filelist列出的所有文件里面,查找以"正则表达式"所描述的字符串。

options : 
			-n 显示查找到的字符串所有行号 
			-E 用扩展的正则表达式 
				grep -E  
					<=>  egrep 
					
			-i ignore在字符串查找时忽略大小写 
				-i "main" 
					[mM][aA][iI][nN] 
					
			-# 表示同时显示匹配行的上下#行 
				#表示一个整数值 
				
			-c count打印每个文件里匹配行的个数
			-H 显示文件名 
			-h 不显示文件名 
			
			匹配内容颜色高亮显示 
			--color=always 总是高亮显示 
			--color=never  不高亮显示 
			--color=auto   随机 

在这里插入图片描述

find

find 用来在一个文件系统中查找指定的文件

语法:

find [path ...] [options]
options : 
				-name pattern 
					指定要查找的文件的名字,可以用通配符
						* 代表0个或任意多个字符
						? 代表一个任意字符 

如: 
						find ./ -name "*.c" 


				-regex pattern 
					以正则表达式的方式指定要查找的文件名 
					
					如: 
						find /mnt/hgfs/ -regex ".*[ch]" 
						找到上述目录以及目录一下的所有的 .c / .h / .sh


				-type b|c|d|p|f|l|s  指定要搜索的文件类型 
					b: block块设备文件 
					c: char字符设备文件 
					d:  directory 目录文件 
					p:  pipe 管道文件 
					f:	regular file 普通文件 
					l:  link 软链接文件(符号链接)
					s: socket 套接字文件   
					
					
				-size n[cwbKMG]
						-size 5  默认单位为块
					
					c: 单位为字节
					w: 单位为字 
					b: 单位为块 512B 
					
					K: 1K = 1024B 
					M: 1M = 1024K 
					G: 1G = 1024M 
					
					
				-perm mode 要查找的文件的权限 
					permission 权限 
					mode 有两种写法: 
						-mode 要求所有 (1)权限位都要被匹配 
							如: 
								-perm -0664 
						
						/mode 只要匹配 (1) 一位即可
							如: 
								-perm -0111
								带查找的文件权限只要有一个可执行权限位即可
								
								
				-newer file 
					查找比文件file更加新的文件 
					带查找的文件的修改时间在file这个文件的后面即可  
					
				-delete 
					找到即删除   
					
				-exec command {
    
    } \; 
					每查找一个文件就执行 command这个命令,
					{
    
    } 代表找到的文件的文件名,找到一个文件,就执行
					一次command这个命令。
					
					如: 
						find . -name "*.c" -exec ls -l {
    
    } \; 
						
						
				-exec command {
    
    } + 
					所有文件查找完成后,再执行command这个命令,
					{
    
    } + 代表所有查找到的文件的文件名(以空格隔开) 
					
					find . -regex ".*[ch]" -exec tar -zcvf C.tar.gz {
    
    } +

猜你喜欢

转载自blog.csdn.net/weixin_46836491/article/details/125841849