linux提取指定行至指定位置
- grep查找ERROR,定位位置
- awk打印到指定行数
- sed打印到文本末尾
- awk打印到文本末尾
方法一
#!/bin/csh -f
if(-f errorlog.rpt) then
rm -rf errorlog.rpt
endif
ls *.log > loglst.lst #将log文件写到指定文件
#loop execute
set n=`wc -l < loglst.lst`#得到log文件个数(行数)
echo $n
set i=1
while ($i <= $n)
set line="`awk '{if (NR == $i) print}' loglst.lst`" #循环得到log文件名
echo $line
set linenum=`grep -n " ERROR: Device" $line | awk -F ":" '{print $1}'` #查找ERROR位置,得到行数
echo $linenum
set j=$linenum
set num=`wc -l < $line` #得到文件的总行数
while ($j <= $num ) #使用awk循环打印至行末
echo "`awk '{if(NR == $j) print}' $line`" >> errorlog.rpt
@ j ++
end
@ i ++
end
方法二
请教大神得到的多种方法
#!/bin/csh -f
if(-f errorlog.rpt) then
rm -rf errorlog.rpt
endif
ls *.log > loglst.lst
#loop execute
set n=`wc -l < loglst.lst`
echo $n
set i=1
while ($i <= $n)
set line="`awk '{if (NR == $i) print}' loglst.lst`"
echo $line
sed -n '/ ERROR: Device/,$p' $line >> errorlog.rpt #查找打印至文本末尾
#awk '/ERROR/,EOF' $line >> errorlog.rpt
#awk '/ERROR/{a++}a' $line >> errorlog.rpt
#awk 'a;/ERROR/{a++}' $line >> errorlog.rpt
@ i ++
end
linux提取指定行至指定位置的更多相关文章
- css3实现超出文本指定行数(指定文本长度)用省略号代替
测试代码: <!DOCTYPE html> <html> <head> <meta name="viewport" content=&qu ...
- shell awk读取文件中的指定行的指定字段
1.awk功能和实用形式 awk指定读取文件中的某一行的某个字段 awk 可以设置条件来输出文件中m行到n行中每行的指定的k字段,使用格式如下 awk 'NR==m,NR==n {pr ...
- pandas数据处理基础——筛选指定行或者指定列的数据
pandas主要的两个数据结构是:series(相当于一行或一列数据机构)和DataFrame(相当于多行多列的一个表格数据机构). 本文为了方便理解会与excel或者sql操作行或列来进行联想类比 ...
- 使用sed替换指定文件指定行的指定文本
下面是将85行的127.0.0.1替换为192.168.10.108 sed -i '85{s/127.0.0.1/192.168.10.108/}' /etc/zabbix/zabbix_agent ...
- MyEclipse中快速跳转到指定行号位置
有时候我们希望能从当前编辑位置跳到指定行号的位置,可以使用Ctrl + l 快捷键. 其中 l 代表line.
- bat如何提取文本指定行的内容
背景:使用CTS框架运行完测试后,会在logs中生成devices_log和host_log,在results中生成相应的结果(报告).根据报告信息我们可以得知失败的用例,但是却不能知道为什么用例会失 ...
- JqGrid把数据行插入指定位置的方法addRowData
1.首页在colModel里写好方法,如下代码options.rowId是获取当前行的编号 { label: '操作', width: 60, align: 'center', formatter: ...
- 在Linux中使用vi打开文件时如何显示行号,及跳转到指定行
vi 文件名,打开文件后 如果要显示所有行号,使用 :set nu 如果要显示当前行号,使用 :nu 如果要跳转到指定行,使用 :行号 例如,跳转到第10行,使用 :10
- linux命令(51):set 指定行,直接替换并修改文件
sed 命令: 指定行,从第一行到第一行: 把该行的ssd,换成cd: -i 表示的是替换并直接修改文件: sed -i '1,1s/ssd/cd/g' test_file 命令使用: sed - ...
随机推荐
- 自定义key解决zabbix端口监听取值不准确的问题
今天有一个朋友问到我一个关于zabbix监控tcp端口的问题,明明端口在监听,但是通过net.tcp,listen取值取到的却是0. 经过简单的goole发现这已经是一个历史悠久的问题: 问 ...
- 关于SQL中数据类型(float和real)和 .NET Framework 中数据类型(float和double)的问题
今天同学写程序遇到一个问题,MSSQL里的数据是 float 类型,在 .NET Framework 中用的时候也转换成 float 类型,结果报错,类型转换异常,明明是相同的类型,为什么会异常 在w ...
- Asp.Net WebAPI传递json对象、后台手动接收参数
1.前台代码 /* * 跨域请求Post * 1个对象参数,后台JObject接受 */ $.post(apiUrl.getOne("PostFourth"), { name: } ...
- AngularJs练习Demo18 Resource
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...
- cas+tomcat+shiro实现单点登录-2-部署cas server到tomcat
目录 1.tomcat添加https安全协议 2.下载cas server端部署到tomcat上 3.CAS服务器深入配置(连接MYSQL) 4.Apache Shiro 集成Cas作为cas cli ...
- jq:get获取json数据并以表格形式生成到页面
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- POJ2151 动态规划
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int ...
- text-align:justify小例子
一个使用 text-align: justify; 使元素均匀分布的小例子: <!DOCTYPE html> <html lang="en"> <he ...
- Javascript 判断浏览器是否为IE的最短方法
作者:idd.chiang 发布时间:April 29, 2010 分类:Javascript/AS 在网上有幸看到夷人通过IE与非IE浏览器对垂直制表符支持特性搞出的一段简短的条件: var ie ...
- MyGeneration 默认设置中没有数据库驱动
这 个问题的出现基本上是因为MyGeneration 1.3需要的是 .Net framework 4.0,如果系统安装了 .Net 2.0的版本,安装程序执行的 regasm.exe为2.0版本下的 ...