Shell grep 和正则】的更多相关文章

在grep中正则有三种模式, 分别是基础(-G), 扩展(-E)和Perl(-P)模式 basic 模式 不支持\d, 支持\w \s \b. ?, +, {, |, (, and ) 在basic 模式中也失去了其在正则式中的特殊含义 如果想在basic 中使用这些特殊字符,可以用\来转义 # echo "- 2222-" |grep -o '[0-9]+' null # echo "- 2222-" |grep -o '[0-9]\+' egrep 表示扩展模式…
Shell grep正则匹配中文 测试文本 demo_exe.c,内容如下,需要注意保存的编码格式,对输出到终端有影响: 我们中文操作系统ASNI默认是GBK的. #include<stdio.h> #include<stdlib.h> #include <string.h> #include <errno.h> #include <locale.h> #include <dlfcn.h> /* * export LD_LIBRARY…
文本处理三剑客:1.grep  2.sed  3.awk 一.grep:(过滤) grep的使用,主要的参数有: -n  :显示行号:-o  :只显示匹配的内容-q  :静默模式,没有任何输出,得用echo$?来判断执行成功没有,即有没有过滤到想要的内容 -l  :如果匹配成功,则只将文件名打印出来,失败则不打印,通常-rl一起用,grep -rl 'root' /etc -A  :如果匹配成功,则将匹配行及其后n行一起打印出来-B  :如果匹配成功,则将匹配行及其前n行一起打印出来-C  :如…
一 什么是正则 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 生活中处处都是正则: 比如我们描述:4条腿 你可能会想到的是四条腿的动物或者桌子,椅子等 继续描述:4条腿,活的 就只剩下四条腿的动物这一类了 在linux中,通配符是由shell解释的,而正则表达式则是由命令解释的,下面我们就为大家介绍grep文本处理命令,它也可以解释正则. 二 grep 参数 -n  :显示行号-o  :只显示匹配的内容-q  :…
如要匹配Computer或computer两个单词,可做如下操作: [Cc]mputer “.”允许匹配ASCII集中任意字符,或为字母,或为数字. 使用\{\}匹配模式结果出现的次数 匹配字母A出现两次,并以B结尾,操作如下: A\{2\}B 匹配A至少4次,使用: A\{4,\}B 如给出出现次数范围,例如A出现2次到4次之间: A\{2,4\}B 在grep命令中输入字符串参数时,最好将其用双引号括起来.例如:“mystring”.这样做 有两个原因,一是以防被误解为shell命令,二是可…
一.前述 Linux中正则匹配查找比较常用,所以分享一篇关于正则匹配和Grep结合的文章. 二.匹配规则 匹配操作符: \                  转义字符.                      匹配任意单个字符[1249a],[^12],[a-k]  字符序列单字符占位^                 行首$                  行尾\<,\>:\<abc           单词首尾边界|                   连接操作符(,)     …
处理文件的命令实在是多, sed, awk, grep等.遇到了需要匹配tab的情况, 记录一下. 例子如下:找出文本中第一列是1的行. 文本a 解法1 : 直接使用正则表达式, ^表示开头, \t表示tab grep -P "^1\t" a 解法2 : awk循环行,并判断 awk '{if($1 == 1) print $0}' a 解法3: sed 中使用正则,-n 只打印匹配行 sed -n '/^1\t/p' a…
我是好文章的搬运工,原文来自ChinaUnix,博主scq2099yt,地址:http://blog.chinaunix.net/uid-22312037-id-4217835.html 一.基本用法        grep是linux中很常用的一个命令,主要功能就是进行字符串数据的对比,能使用正则表达式搜索文本,并将符合用户需求的字符串打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户.grep在数据中查找出一…
昨日内容回顾 1.每个月的3号.5号和15号,且这天时周六时 执行 00 00 3,5,15 * 6 2.每天的3点到15点,每隔3分钟执行一次 */3 3-15 * * * 3.每周六早上2点半执行 30 02 * * 6 4.每隔两个月的一号下午10点执行 00 22 01 */2 * 5.root密码忘记的解决方法 1.重启 2.在启动选择系统内核界面,按 e 键进入单用户模式 3.找到 linux16 开头行,删除 ro , 并且在 ro 处添加 rw init=/sysroot/bin…
'foo' sample.txt ➜ dex-method-counts git:(master) ./dex-method-counts ~/Downloads/n.apk | 'hui' hui: agent: complain: detail: list: pay: rules: util: loader: model: locationservice:…
grep "socket" a --color=auto…
grep "str" file > /dev/null if [ $? -eq 1]; then echo "no str" else echo "find str" fi 输出到/dev/null中为了不打印输出…
一.grep/egrep 1. 语法+选项语法: grep [-cinvABC] 'word' filename -c :打印符合要求的行数-n :在输出符合要求的行的同时连同行号一起输出 -v :打印不符合要求的行 ,取反===-A :后跟一个数字(有无空格都可以),例如 –A2则表示打印符合要求的行以及下面两行 -B :后跟一个数字,例如 –B2 则表示打印符合要求的行以及上面两行 -C :后跟一个数字,例如 –C2 则表示打印符合要求的行以及上下各两行 -r : 会把目录下面所有的文件全部…
1.或操作 grep -E '123|abc' filename // 找出文件(filename)中包含123或者包含abc的行 egrep '123|abc' filename // 用egrep同样可以实现 awk '/123|abc/' filename // awk 的实现方式 2.与操作 grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行. 3.正则表达式元字符集: ^ 锚定行的开始 如:'^grep…
grep 1.-i 不区分大写小写 2.-n 区分大小写 3.-E 查找多个条件 4.-c 查找到的结果的行数 5.-w 精确查找 6.取反 7.-q 静默输出…
egrep '^.{11}(WP)' inputfile | sort -k1.17,1.24 > outputfile WP 在12位开始.…
#!/bin/bash variable="This is a fine mess." echo "$variable" # Regex matching with =~ operator within [[ double brackets ]]. if [[ "$variable" =~ T.........fin*es* ]] # NOTE: 从bash V3.2开始,正则表达式不再用引号引起来then echo "match fo…
grep 的全称是 Globally search a Regular Expression and Print,是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行 我们程序员最常用的是查找指定的线程: 去查找指定的进程:ps -ef | grep *** grep提供两种方式: grep [option] [pattern] testfile stdout | grep [option] [pattern] 语法格式 解释 option 参数选项 pat…
 string editor  流编辑器 sed编辑器是一行一行的处理内容,正在处理的内容存放在缓冲区内,处理完后 按照选项的规定进行输出或者修改文件 option: -n 静默模式结合p可以只输出修改行,读取指定行数 -e 多操作指令 -f 运行脚本 -i 修改文件 -i.bak 修改同时备份.bak文件 -r 使用扩展正则 command: a 追加 i 插入 p 打印 d 删除 r/R 读取文件/一行 w 存档 s 查找 c 替换 y 替换 h/H 复制拷贝/追加缓冲区到存放空间 g/G…
主要内容 1.标准输入输出和错误 2.管道命令和 grep, tr,sort, wc, cut,split,tee,sleep 标准输入输出和错误 标准输入(stdin) 是指令数据的输入,代码为0,使用<或者<<,默认是键盘 标准输出(stdout)是指令执行成功返回的结果,代码为1,使用>或者>>,默认由屏幕显示 标准错误输出(stderr)是指令执行失败返回的错误信息,代码为2,使用2>或者2>>,默认是屏幕 < 指定输入的数据媒介来源1&…
系统通配符号.系统正则符号,grep 1 系统通配符号 系统通配符号:借助通配符号 匹配文件名称信息 1.1 *: 匹配所有(任意)字符信息 找寻以old开头的文件 find /oldboy -type f -name "old*" 找寻以.txt结尾的文件 find /oldboy -type f -name "*txt" 找寻以old开头,txt结尾的文件 find /oldboy -type f -name "old*txt" 1.2 {}…
什么是正则表达式?正则表达式是用于描述字符排列和匹配模式的一种语法规则.在很多程序设计语言中都支持利用正则表达式来进行字符串的操作,不同语言中的正则表达式略有不同,但是毕竟都是正则,其本质思想都是一致的,当我们掌握了shell中的正则后,再去看python或者perl里面的正则表达式时,会发现其实都是一样的东东. 在shell的一些命令中,有些并不支持正则表达式,但是它们支持Linux里面的通配符,那么通配符又是什么东东呢,它跟正则表达式又有什么关系? 正则表达式用来在文件中匹配符合条件的字符串…
python匹配ip正则 #!/usr/bin/env python # -*- coding:utf-8 -*- import re ip_str = "asdad1.1.1.1sdfwe2.6.5.7sdfsf2.3.94.5sdf200.198.25.0" res = [] for i in range(1): ip_t = True m_ind = 0 while ip_t: m = re.search(r"(((2([0-4]\d|5[0-5])|((1\d|[1-…
正则表达式 符号 含义 . 匹配任意ASCII中任意单个字符,或是字母,或是数字 ^ 匹配行首 $ 匹配行尾 * 匹配任意字符或前一个的一次或多次重复 \ 转义,被转义的有$ . ‘ “ * [ ] ^ \ ( ) | + ? […] [-] 匹配一个范围或集合 \{\} 匹配n次:\{n\},最少n次:\{n,\},m到n次:\{m,n\}, + 仅用于awk,标识匹配一个或多个 ? 仅用于awk,匹配0次或1次 grep 先给出示例文件data.f的内容 Dec 3BC1977 LPSX S…
from:http://blog.sina.com.cn/s/blog_4152a9f501013r6c.html 常用的shell脚本 (2012-10-10 22:09:07) 转载▼ 标签: 杂谈 分类: Internet和计算机 1.脚本之间传递参数 "1.sh"的脚本,接受参数.如下,如果有一个参数则赋值个sourceFile这个变量,否则用默认值. Shell代码 #!/bin/bash LANG=en_US.UTF-8 #get parameters sourceFile…
本篇文章主要介绍了"shell 判断字符串是否为数字",主要涉及到shell 判断字符串是否为数字方面的内容,对于shell 判断字符串是否为数字感兴趣的同学可以参考一下. #!/bin/bash       ## 方法1 a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers   第一个-n是shell的测试标志,对后面的…
#!/bin/bash ## 方法1 a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers 第一个-n是shell的测试标志,对后面的串"`sed -n '/^[0-9][0-9]*$/p'`" 进行测试,如果非空,则结果为真. sed默认会显示所有输入行信息的,sed 的“-n”选项是让sed不要显示,而只显示我们所需要…
-1 使用场景:搜索定位内容并输出(所在行) -2 三者区别: --1 grep  默认支持普通正则 --2 egrep 默认支持扩展正则 等同于 grep -E --3 fgrep 速度最快,不支持正则表达式 -3 使用格式:grep 参数 匹配式 文件 -4 参数:可合并 -5 匹配式:-1 需用引号 -2 支持正则表达式 -6 具体使用方法: --1 常用参数 --1 -v 反选 eg:grep -v '^#' /etc/inittab #删除所有注释行,输出剩余行 --2 -i 忽略匹配…
原文:http://www.cnblogs.com/Javame/p/3867686.html 1.在两个文件中找出相同的号码 diff -y xx.txt oo.txt | egrep -v "<|>" | awk '{print $2}' 2.打印第几行到第几行之间 cat 1 | awk 'NR==2,NR==4{print}' 1.删除Linux远程用户连接会话 [root@tradx24 logs]# w 10:45:28 up 15 days, 16:23, 4…
grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 使用grep搜索某个关键字时,默认搜索出来的是所有包含该关键字的行,如下:搜索/var/named/veredholdings.cn_zone文件中172.16.50.24所在的行,默认会把所有包括172.16.50.24所在的行打印出来.[root@uat…