grep -b6 'UPDATE award SET remain = remain - 1 WHERE id= ***' logbin.000039.log | grep 'INSERT INTO score_exchange_log'
grep -a2 'INSERT INTO award_exchange_log' logbin.000040.log |grep '"***"'
grep "cpaint_function=ajax_change_award" 1610 |grep http://award.snjifen.com/award_change.php\?id=528 --color
grep '09/Nov/2010:16:15' access_log.20101109 |grep -Ev "image|style" >1615
grep -a2 'INSERT INTO award_exchange_log' logbin.000040.log |grep '"528"'
grep '/jinjin' acc_log.20110109 |grep -Ev "css|images" |less
grep '/jinyin HTTP/1.1' acc_log.20110109 -c 访问数
ll logbin.*.log -h 文件列表显示每个文件大小
awk -F"," '{print $1}' jisuandaoda_5_xian.txt >jisuandaoda_5.1.txt
for i in `seq -w 00 60` ; do echo -n "$i : " ; grep -c "2010:16:$i" 162.log ; done
grep -a1 'award_exchange_log' 45.log | grep '530' | wc -l
39
grep -R "UPDATE award SET remain = remain - 1 WHERE id=" *
-R的意思是递归的对目录下的所有文件(包括子目录)进行 grep。
比如 grep -R main src
就会搜索src目录下所有文件中是否包含 main 这个字符串。
例子:^_13400602921^_ 前后有字符串 可以awk截取
awk '{print substr($1,3,11)}' mm_xue_11_test.csv
例子:470555^IM-7M-"M-JM-G^I18729180294^IM-IM-BM-NM-w^IM-NM-wM-0M-2M-JM-P^I^I2.01011E+13^I2.01011E+13^I1^Iheaven0000477@sohu.com^M$
通过cat -A 全部大印显示
grep -w -o '1[358][0-9]\{9\}' a_cyonlineuser_22_20101201.txt
cat -A /data/website/tmp/file/a_cyonlineuser_22_20101201.txt |awk -F"_" '{print $3}' |
sed 's/\^//g'|less
刪除沒有內容的空白行:
g/^$/d
刪除包含有空格组成的空白行:
g/^\s*$/d
除以空格或tab开头到结尾的空白行:
g/^[ |\t]*$/d
vi中怎么删除重复行?
使用冒号命令
:sort u
有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M 字符。虽然,这并不影响什么,但心里面还是有点不痛快。如果想要删除这些 ^M 字符,可以使用 Vim 来轻松搞定它。
在 Vim 的命令模式中输入
:%s/^M$//g
后,回车即会自动删除该文件中的所有 ^M 字符。
那么,这句命令到底是什么意思呢?% 指匹配整个文件,s 是置换的意思,
^M 注意要用 Ctrl + V Ctrl + M 来输入,M 后面的 $ 代表匹配行尾的内容,最后的 g 则表示每行中匹配到的内容都要置换。
理解了命令的含义,就好变通使用了,比如说,要将某个文件中的 Vim 全部替换成 VIM,则可以使用这样的命令:
:%s/Vim/VIM/g
另外的一个解决方案是使用dos2unix命令: dos2unix xxxx.txt
$ awk '/^(no|so)/' test-----打印所有以模式no或so开头的行。
$ awk '/^[ns]/{print $1}' test-----如果记录以n或s开头,就打印这个记录。
$ awk '$1 ~/[0-9][0-9]$/(print $1}' test-----如果第一个域以两个数字结束就打印这个记录。
$ awk '$1 == 100 || $2 < 50' test-----如果第一个或等于100或者第二个域小于50,则打印该行。
$ awk '$1 != 10' test-----如果第一个域不等于10就打印该行。
$ awk '/test/{print $1 + 10}' test-----如果记录包含正则表达式test,则第一个域加10并打印出来。
$ awk '{print ($1 > 5 ? "ok "$1: "error"$1)}' test-----如果第一个域大于5则打印问号后面的表达式值,否则打印冒号后面的表达式值。
$ awk '/^root/,/^mysql/' test----打印以正则表达式root开头的记录到以正则表达式mysql开头的记录范围内的所有记录。如果找到一个新的正则表达式root开头的记录,则继续打印直到下一个以正则表达式mysql开头的记录为止,或到文件末尾。
转摘 awk 学习笔记
http://www.linux.gov.cn/shell/awk.htm
awk 小记
http://www.chinaunix.net/jh/24/691456.html
分享到:
相关推荐
最头疼的是,这些重复部分的语法还各不相同,(比如 grep awk sed 都有正则表达式匹配的功能,但是三者的正则表达式语法就不相同) 最最最头疼的是,每个工具还分 GNU 版和不是 GNU 版,之间的差别也很大, 最最最最...
常用linux命令在windows环境下使用 windows grep awk sed cat
### Grep、Awk、Sed调研文档 #### 引言 `grep`(全局搜索正则表达式并打印出匹配的行)是一款强大的文本搜索工具,在Linux和Unix环境中广泛使用。它能够根据用户提供的正则表达式在指定的一个或多个文件中查找匹配...
### Linux系统中的查询三剑客:grep、awk、sed 使用详解 #### grep 命令详解 `grep` 是一个非常强大的文本搜索工具,它可以在文本中查找指定的字符串,并且能够逐行处理文本。这使得 `grep` 成为了文本处理和数据...
Linux核心命令是指在Linux操作系统中常用的、基本的命令,这些命令可以帮助用户管理文件、目录、进程、用户、网络等系统资源。以下是一些常见的Linux核心命令及其简要说明: 1. **ls**:列出目录中的文件和子目录。...
sed awk grep sed awk grepsed awk grep sed awk grep sed awk grep sed awk grep sed awk grep sed awk grep sed awk grep
### Linux grep sed awk命令详解 #### 一、grep命令详解 **grep** 是一个用于查找文件里符合条件的字符串的强大工具。它可以对文件进行快速搜索,找出含有特定模式的行。 - **基本语法**:`grep [选项] 模式 文件...
在IT领域,文本处理是日常工作中不可或缺的一部分,而grep、sed、awk和perl这四个工具在处理文本时都广泛地使用了正则表达式。它们各自有着不同的特性和适用场景,理解它们之间的差异有助于我们更高效地进行文本操作...
Linux系统中,文本处理是一项常见且重要的任务,grep、sed和awk是三个常用的文本处理工具,因其功能强大,被誉为Linux文本处理的"三剑客"。下面将详细总结这三个工具的使用方法和相关知识点。 ### grep grep是用于...
### grep、sed、awk命令实例大练习 在Linux或Unix环境中,`grep`、`sed`和`awk`是三个非常强大的文本处理工具。通过掌握这些工具的基本用法及高级功能,用户可以高效地处理各种文本文件。下面将详细介绍如何使用...
例如 vi, grep, awk ,sed 等等工具,因为她们有支持正则表达式, 所以,这些工具就可以使用正则表达式的特殊字符来进行字串的处理。但例如 cp, ls 等指令并未支持正则表达式, 所以就只能使用 Bash 自己本身的...
然而,为了实现类似的功能,例如文本处理和搜索,有一些工具可以帮助我们在Windows环境下模拟Unix/Linux中的`grep`、`sed`和`awk`。这三个工具在文本处理领域极其重要,它们分别用于查找、替换和格式化文本数据。 `...
sed awk grep命令使用 sed awk grep命令使用 sed awk grep命令使用
包含命令:awk、cat、cut、diff、echo、gawk、grep、head、sed、sort、tac、tail、tr、uniq、wc 可以在windows上cmd窗口显示彩色文字,用法:echo.exe -e "\033[32;1mGREEN\033[0m
本文将深入探讨shell编程,以及与之紧密相关的sed、awk和grep命令,这些都是Linux系统中进行文本处理和数据操作的重要工具。 首先,让我们了解什么是Shell编程。Shell是操作系统提供的一个接口,允许用户与系统内核...
在IT领域,文本处理是日常工作中不可或缺的一部分,而awk、sed和grep是Linux/Unix环境中强大的文本处理工具,它们各自有着独特的功能和应用场景。这里,我们将深入探讨这三个工具及其使用方法。 首先,让我们来了解...
在IT行业中,文本处理是日常工作中不可或缺的一部分,而awk、sed和grep是Linux/Unix环境中强大的文本处理工具。这三个工具各自具有独特的功能,但又常常相互配合,为数据过滤、格式化和查找提供了强大支持。下面我们...
在Linux系统中,grep、sed和awk是三个强大的文本处理工具,被誉为“三剑客”。它们各自具有独特的功能,能够帮助用户高效地处理文本数据。 grep全称是Global Regular Expression Print,它主要用于在文件中搜索匹配...