智能自助建站系统源码,深圳网站建设设计平台,迁安做网站哪家好,崇明区建设镇网站目录 一#xff0c;grep
1#xff0c;grep介绍
2#xff0c;grep的常用选项
3#xff0c;grep使用演示
1#xff0c;基本使用 直接查找字符串#xff1a;
使用选项
2#xff0c;使用正则表达式进行匹配
1#xff0c;正则表达式介绍
2#xff0c;使用范例
二grep
1grep介绍
2grep的常用选项
3grep使用演示
1基本使用 直接查找字符串
使用选项
2使用正则表达式进行匹配
1正则表达式介绍
2使用范例
二sed
1sed介绍
2sed常用选项和指令
3sed使用实例
1简单实例
2综合实例
三Find
1find介绍
2常用选项 编辑 一grep
1grep介绍
grep是Linux上的一个文本搜索工具是用来查找文本文件内的一些符合grep定义模式的文本文件的。格式grep [OPTIONS...] PATTERN [FILE...]
2grep的常用选项 3grep使用演示
1基本使用 直接查找字符串
grep 字符串 文件 使用选项
只显示第一行
grep 字符串 -m 1 文件 查找并显示行号
grep 字符串 -n 文件 只显示查找到的字符串
grep -o 字符 文件 剔除查找的内容后显示别的内容
grep -v 字符 文件 使用多个条件查找字符满足两个条件之一便可以查找
grep -e 字符 -e 字符 显示匹配到字符条件的行的行号
grep -c 字符 文件 递归条件搜索
1,不管软连接文件
grep -r 字符 文件 2,管软连接 grep -R 字符 文件 不区分大小写
grep -i 字符串 文件 从文件中读取pattern再匹配
先创建文件 使用-f选项读取文件的pattern内容进行匹配 2使用正则表达式进行匹配
1正则表达式介绍
正则表达式的使用方式可以再网上查询也可以使用man 7 regex再Linux上查看。
2使用范例 分区利用率最大的值 df | grep ^/dev/sd|tr -s |cut -d% -f1|cut -d -f5|head -1 指令解释 df显示显示文件系统资源的信息。 grep ^/dev/sd将df里面以/dev/sd开头的内容截取出来。 tr -s :将重复的空格去掉仅保留一个空格。 cut -d% -f1:以%为分隔符分为左右两边取-f1表示左边。 cut -d -f5以 为分隔符取第五个。 head -1只要最上面的第一行。 哪个IP和当前主机连接数最多 ss -nt |grep ^ESTAB|tr -s |cut -d -f5|cut -d : -f1指令解释 ss -nt ss 是一个用于检查套接字的工具它可以显示类似于 netstat 的信息但比 netstat 更快。-n 选项表示以数字形式显示地址和端口号不尝试解析服务名称。-t 选项指定只显示TCP连接。 |管道这个符号用于将前一个命令的输出作为后一个命令的输入。 grep ^ESTAB grep 是一个强大的文本搜索工具。^ESTAB 是一个正则表达式匹配以ESTAB开头的行。这里实际上是匹配ESTABLISHED状态的连接但假设是为了简化而只写了ESTAB的一部分。然而注意这样可能不准确匹配到所有ESTABLISHED状态的行因为完整的状态通常是ESTABLISHED。正确的正则表达式应该是^ESTABLISHED。 tr -s tr 是一个用于转换或删除字符的工具。-s 选项表示压缩序列中的重复字符但在这个命令中它实际上对空格进行压缩因为指定了 一个空格作为要压缩的字符。然而由于grep的输出通常不包含连续的空格这个选项可能在这个具体命令中并不必要。 cut -d -f5 cut 是一个用于按列提取文本的工具。-d 指定空格作为字段分隔符。-f5 表示提取第五个字段。在ss -nt的输出中第五个字段通常是本地地址和端口例如192.168.1.1:80。 cut -d : -f1 这个cut命令再次使用但这次是以:作为字段分隔符。-f1 表示提取第一个字段即IP地址部分 连接状态的统计 ss -nat|grep -v ^State|cut -d -f1|sort -u 指令解释 ss -nat将所有的tcp连接以数字的方式显示出来。 grep -v ^State:不显示以State开头的行。 cut -d -f1以空格为分隔符并取第一列。 sort -u排序并去掉重复的状态。 过滤掉文件的注释(包括#号的行)和空行 grep -v ^#|$ /etc/passwd
二sed
1sed介绍
sed也是一个文本处理工具特点是可以一行一行的读取文件内容并处理。相比于vim等文本编辑器更加高效。
格式sed [OPTION]... {script-only-if-no-other-script} [input-file]...
2sed常用选项和指令 3sed使用实例
1简单实例
打印文件内容
sed p 文件 仅显示与查找匹配的内容
sed -n /字符串/p 文件 只打印第一行的内容
sed -n 1p 文件 sed给每一行后面加上空格
sed G 文件 2综合实例
删除每行的第二个字符
sed -r s/(.)(.)(.*)/\1\3/ test.txt
代码解释 -r使用扩展模式 s启用搜索功能 (.)(.)(.*)匹配的字符模式,每一个括号代表一个匹配组。 \1\3代表显示第一个和第三个捕获组的内容。 删除第二个单词
sed -r s/^([a-zA-Z][^a-zA-Z])[a-zA-Z]/\1/ test.txt
解释 sed -r使用 sed 的扩展正则表达式模式。s/^([a-Z][^a-Z])[a-Z]/\1/g这是一个替换命令其结构为 s/pattern/replacement/flags。 ^匹配行的开始。([a-Z][^a-Z])这是一个捕获组但其中的正则表达式可能不是您想要的。 [a-Z]匹配一个或多个字母注意[a-Z] 实际上可能不是所有 sed 实现都支持的因为标准 ASCII 字符集中没有 Z 到 a 的范围但这里可能是想表达 [a-zA-Z] 的意思即匹配任何大小写字母。[^a-Z]紧接着尝试匹配一个或多个非字母字符但由于前面的 [a-Z] 已经消耗了尽可能多的字母这个部分可能永远不会被匹配到除非输入字符串以非字母字符开头但这与 ^ 冲突。[a-Z]这部分尝试匹配行中紧接着前面部分的又一个或多个字母但由于前面的正则表达式可能存在的问题这部分的匹配也可能不是你预期的。\1在替换文本中\1 引用第一个捕获组的内容。 三Find
1find介绍 find是一个文件搜索工具可以实时的查找文件。 2常用选项 在使用find时可以指定文件路径进行查找。
指定在根目录下查找
sudo find / -name passwd