linux grep 和 find 命令

Find命令

find  /dir  -name hsl  /dir目录极其子目录下查找名字为hsl 的文件

find  .  -name   “*.txt” 在当前目录下找后缀为txt的文件

 

 

Grep命令

是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来

 

元数据

意义和范例

^word

搜寻以word开头的行。

例如:搜寻以#开头的脚本注释行

grep –n ‘^#’ regular.txt

word$

搜寻以word结束的行

例如,搜寻以‘.’结束的行

grep –n ‘.$’ regular.txt

.

匹配任意一个字符。

例如:grep –n ‘e.e’ regular.txt

匹配e和e之间有任意一个字符,可以匹配eee,eae,eve,但是不匹配ee。

\

转义字符。

例如:搜寻’,’是一个特殊字符,在正则表达式中有特殊含义。必须要先转义。

grep –n ‘\” regular.txt

*

前面的字符重复0到多次。

例如匹配gle,gogle,google,gooogle等等

grep –n ‘go*gle’ regular.txt

[list]

匹配一系列字符中的一个。

例如:匹配gl,gf。

grep –n ‘g[lf]’ regular.txt

[n1-n2]

匹配一个字符范围中的一个字符。

例如:匹配数字字符

grep –n ‘[0-9]’ regular.txt

[^list]

匹配字符集以外的字符

例如:grep –n ‘[^o]‘ regular.txt

匹配非o字符

\{n1,n2\}

前面的字符重复n1,n2次

例如:匹配google,gooogle。

grep –n ‘go\{2,3\}gle’ regular.txt

\<word

单词是的开头。

例如:匹配以g开头的单词

grep –n ‘\<g’ regular.txt

word\>

匹配单词结尾

例如:匹配以tion结尾的单词

grep –n ‘tion\>’ regular.txt

 grep一般情况下支持基本正则表达式,可以通过参数-E支持扩展正则表达式

元数据

意义和范例

+

重复前面字符1到多次。

例如:匹配god,good,goood等等字符串。

grep –nE go+d’ regular.txt

?

匹配0或1次前面的字符

例如,匹配gd,god

grep –nE ‘go?d’ regular.txt

|

或(or)的方式匹配多个字串  
例如:grep –nE ‘god|good’ regular.txt

匹配god或者good。

()

匹配整个括号内的字符串,原来都是匹配单个字符

例如:搜寻good或者glad

grep –nE ‘g(oo|la)’ regular.txt

()

前面的字符重复0到多次。

例如匹配gle,gogle,google,gooogle等等

grep –nE ‘go*gle’ regular.txt

Grep主要是配合正则表达式来搜索和匹配要找的字符串。

Sudo 命令是linux下常用的  允许普通用户使用超级用户权限的工具。

touch 是新建文件   mkdir 是新建目录

 

which 查看的是 可执行的文件  的位置

whereis 查看的是 文件的位置 程序的搜索 只搜索二进制文件

locate 配合 数据库 查看文件的位置  相当于 find -name

find 实际的 搜寻 硬盘 查询 文件名称

grep 强大的文本搜索工具  使用正则表达式搜索文本 并把匹配的行打印出来

 

 

cat 和 more 的区别

都是显示制定的一个文件或者多个文件 区别是

more 类似于cat 但是会一页一页的显示  方便使用者的阅读

 

chown  chgrp 命令用来设置文件的所有者、用户组;

注意:xiazdong 是用户名

(1)chgrp xiazdong test.txt:将test.txt的文件用户组设置为xiazdong;

(2)chgrp xiazdong dir:将dir的文件用户组设置为xiazdong;

(3)chown xiazdong test.txt:将test.txt的文件所有者设置为xiazdong;

(4)chown xiazdong:root test.txt:将test.txt的文件所有者设置为xiazdong,用户组设置为root;

 

        

你好!关于Linux中的grep和find命令,我很乐意为您进行详细解释。 1. grep命令: grep命令用于在文本文件中搜索指定的模式,并将匹配到的行打印出来。其基本的语法如下: ``` grep [选项] 模式 [文件...] ``` 选项: - `-i`:忽略大小写进行匹配。 - `-v`:反向选择,即打印不匹配的行。 - `-r`:递归地搜索目录下的所有文件。 - `-l`:仅打印匹配到的文件名。 - `-n`:显示匹配到的行及其行号。 示例: ``` grep "pattern" file.txt # 在file.txt文件中搜索包含"pattern"的行 grep -i "pattern" file.txt # 忽略大小写,在file.txt文件中搜索包含"pattern"的行 grep -r "pattern" /path/to/dir # 在目录/path/to/dir及其子目录中递归搜索包含"pattern"的行 grep -l "pattern" file1.txt file2.txt # 仅打印匹配到"pattern"的文件名 grep -n "pattern" file.txt # 显示匹配到的行及其行号 ``` 2. find命令: find命令用于按照指定的条件搜索文件和目录。其基本的语法如下: ``` find [路径] [表达式] ``` 路径:指定搜索的起始路径。 表达式:用于指定搜索的条件。 示例: ``` find /path/to/search -name "*.txt" # 在/path/to/search路径下搜索所有扩展名为.txt的文件 find /path/to/search -type d # 在/path/to/search路径下搜索所有目录 find /path/to/search -type f -size +10M # 在/path/to/search路径下搜索大小超过10M的文件 find /path/to/search -user username # 在/path/to/search路径下搜索所有属于指定用户的文件 ``` 希望以上解释对您有帮助。如果您还有其他问题,请随时提问!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值