精华内容
下载资源
问答
  • linux的sed工具是十分强大的,能很容易的实现某关键词的前一行或后一行增加内容。今天批量修改tomcat的日志时就用到了该功能。 一、某行的前一行或后一行添加内容 具休操作如下: #匹配行前 sed -i '/...

    linux的sed工具是十分强大的,能很容易的实现在某关键词的前一行或后一行增加内容。今天在批量修改tomcat的日志时就用到了该功能。

    一、在某行的前一行或后一行添加内容

    具休操作如下:

    #匹配行前加
    sed -i '/allow 361way.com/iallow www.361way.com' the.conf.file
    #匹配行前后
    sed -i '/allow 361way.com/aallow www.361way.com' the.conf.file

    而在书写的时候为便与区分,往往会在i和a前面加一个反加一个反斜扛 。代码就变成了:

    sed -i '/2222222222/a\3333333333' test.txt
    sed -i '/2222222222/i\3333333333' test.txt

    测试文档:

      1 xiaoming age is 18;
      2 xiaohong age is 19;
      3 xiaohua age is 20;
    

     测试结果:

    # 在包含小明的行后面增加一行
    [root@centos7 sed]# sed '/xiaoming/a\#!/bin/bash' test_sed
    xiaoming age is 18;
    #!/bin/bash
    xiaohong age is 19;
    xiaohua age is 20;
    
    # 在包含小明的行前一行增加一行
    [root@centos7 sed]# sed '/xiaoming/i\#!/bin/bash' test_sed
    #!/bin/bash
    xiaoming age is 18;
    xiaohong age is 19;
    xiaohua age is 20;
    [root@centos7 sed]# 
    

    这就就可以很方便的看出要在某一行前或某一行后加入什么内容 。不过经常我记不住a 、i 那个是前那个是后。我的记法是a = after ,i = in front 。这样就知道 i 是前,a 是后了。不过官方的man文件里不是这样解释的,man文件里是这样解释的:

    a
    text   Append text, which has each embedded newline preceded by a backslash.
    i
    text   Insert text, which has each embedded newline preceded by a backslash.

    而且其可以配合find查找的内容处理,如下:

    find . -name server.xml|xargs sed -i '/directory/i       <!--'
    find . -name server.xml|xargs sed -i '/pattern="%h/a       -->'

    二、在某行(指具体行号)前或后加一行内容(注意:测试未完全通过,偶尔不成功,原因待查,建议使用内容匹配定位行,然后再根据匹配到的行,在其前后添加行)

    sed -i 'N;4addpdf' a.txt
    sed -i 'N;4ieepdf' a.txt 

    这里指定的行号是第四行 。

    测试文档:略

    测试结果:未通过测试

     

    三、删除指定行的上一行或下一行

    删除指定文件的上一行
    sed -i -e :a -e '$!N;s/.*n(.*directory)/1/;ta' -e 'P;D' server.xml
    删除指定文件的下一行
    sed -i '/pattern="%/{n;d}' server.xml 

     

    这个写起来有点长,一般如果不是shell里的需要,我更喜欢用vim去处理。另外需要注意的是,在vim里如果替换的内容里tab这样的符号是需要在编辑模式下分别按ctrl+v 和crtl+I ,而不是不停的几个空格。

    展开全文
  • mysql使用group by进行分组后取某列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID,那么我们需要取得整行的数据。最开始的实现方法如下SELECT t.event_id,MAX(t.create_time) ...

    在mysql中使用group by进行分组后取某一列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID,那么我们需要取得整行的数据。最开始的实现方法如下

    SELECT t.event_id,MAX(t.create_time) as create_time
    from monitor_company_event t 
    GROUP BY t.company_name,t.row_key,t.event_subType
    

    执行以上SQL语句确实可以得到每个分组中最大的create_time,但是经检查发现最大的create_time对应event_id不是同一行的数据,如果我们要对event_id进行操作的话,结果肯定是错误的。

    最后在网上找到了一个变通的办法,如下

    SELECT t.*
    FROM (select * from `monitor_company_event` order by `create_time` desc limit 10000000000) t
    GROUP BY t.company_name,t.row_key,t.event_subType
    

    从以上SQL中可以看出,我们先对所有的数据按create_time时间降序排列,然后再分组,那么每个分组中排在最上面的记录就是时间最大的记录,对执行结果检查后,确实可以实现我们的需求。

    注意:
    limit 10000000000 是必须要加的,如果不加的话,数据不会先进行排序,通过 explain 查看执行计划,可以看到没有 limit 的时候,少了一个 DERIVED 操作。

    explain 
    SELECT t.*
    FROM (select * from `monitor_company_event` order by `create_time` desc limit 10000000000) t
    GROUP BY t.company_name,t.row_key,t.event_subType
    

    这里写图片描述

    explain 
    SELECT t.*
    FROM (select * from `monitor_company_event` order by `create_time` desc ) t
    GROUP BY t.company_name,t.row_key,t.event_subType
    

    这里写图片描述

    展开全文
  • sql查询结果加一行合计

    万次阅读 2018-11-11 17:15:34
    1.预期结果(以图书借阅为例) 查询计算机类图书的总价格和总... 这里为结果bno和bname的合计    最后having过滤去掉多余的合计结果 4.总览   5.union方法  这里就不多解释了    

    1.预期结果(以图书借阅为例)

    查询计算机类图书的总价格和总册数

     

    2. 代码

    ​
    select 
    case when bno is not null then bno else'合计'end bno,
    case when bno is not null then bname else null end bname,
    sum(bprice)as bprice,sum(bcount)as Bcount ,
    sum(Bprice*Bcount)as '总价格'
    from(select bno ,bname, bprice,Bcount,Bprice*Bcount as '总价格'
    from book where Bkind='计算机')as a
    group by bno,bname with rollup
    having bno is null or bname is not null
    
    ​

    3.解释

         select bno ,bname, bprice,Bcount,Bprice*Bcount as '总价格'
         from book where Bkind='计算机'

         这一段为基础数据,查询为除合计外的结果。

         第一个case函数意为bno不为空时显示为合计。

         group by bno,bname with rollup    

         这里为结果加bno和bname的合计

         

         最后having过滤去掉多余的合计结果

    4.总览

         

    5.union方法

          这里就不多解释了

          

         

    展开全文
  • 2、选中数据列和辅助列,点击排序和筛选命令,进行自定义排序,以辅助列为关键字进行升序排列,排序完成后,即可实现隔行插入一行。3、最终效果:转自 https://zhidao.baidu.com/question/320383772.h...

    示例数据:

    1、假定需要插入行的数据行数是6行,在空白列建立辅助列,输入与数据行相同的自然序列,并复制,粘贴在辅助列数据的下方。此处可以理解为需要插入几行,就复制几次。

    2、选中数据列和辅助列,点击排序和筛选命令,进行自定义排序,以辅助列为关键字进行升序排列,排序完成后,即可实现隔行插入一行。

    3、最终效果:

    转自 https://zhidao.baidu.com/question/320383772.html
    展开全文
  • Word 2013一行加阴影的操作方法

    千次阅读 2014-08-26 16:08:36
    Word 2013,要将几行为阴影的操作如下: 1.选择需要阴影的代码: 2.菜单栏,选择“设计”——“页面边框”,打开边框和底纹对话框: 3.选择“底纹”,填充下拉列表选择...
  • jQuerytable动态添加一行tr

    千次阅读 2017-06-27 14:22:20
    页面写个隐藏的 然后当触发某按钮时响应事件 clone()(克隆个隐藏的),然后将克隆得到对象.show()显示出来去掉对象的id或class(避免下次克隆 不是之前那个隐藏的)然后向对象添加相应的数据,...
  • 刚学习pandas,想给个原有的excel表格上实现添加新数据...但这样的方法想就不靠谱,对一张大的excel进行添加数据的操作时,不可能繁琐的提取合并,网上搜索dataframe的特性后,发现这过程十分简单。具...
  • 给文本文件每一行加行号

    千次阅读 2020-04-24 16:37:44
    打开指定的个文本文件,个行前行号。 */ #include<iostream> #include<fstream> #include<stdlib.h> #include<iomanip> //cout<<setw() 输出格式控制 using namespace std...
  • 用jQuery(表末尾)增加一行

    千次阅读 2018-08-21 10:26:00
    经常有需求是这样的:一张完整表的最后一行再增加一行,具体的做法如下(就不提供table的HTML代码了) var $targetTbody= $("#batchPlanTable tbody"); //.children()找到子元素,.children(“”)...
  • sed '1i 添加的内容' file #这是第一行前添加字符串 sed '$i 添加的内容' file #这是最后一行行前添加字符串 sed '$a添加的内容' file #这是最后一行行后添加字符串
  • 首先,阅读这篇文章的你,肯定是网上已经纠结了很久的读者,因为你查阅了所有你能查到的资料,然后他们都会很耐心的告诉你,补码:就是按位取反,然后加一。准确无误,毫无破绽。但是,你搜遍了所有俯拾即是...
  • mysql select的结果添加一行数据

    千次阅读 2019-12-19 13:49:28
    使用select union all select ‘1’ as count, ‘2’ as ratio, ‘’ as totalcount, ‘4’ as pertime, ‘5’ as baseLine union all select tCount.count,format(tCount.count/tTotal.totalcount*100,2) as ratio,...
  • 我的开发环境:Microsoft Visual Studio .net ...新建个Windows Forms Application项目,打开Form1,窗体上放个DataGridView控件和Button,DataGridView的Columns添加两列,Name分别为stuName(此处不可用
  • 后面都是这样 如果需要插入3,就对A列123456多复制次,排序,当然这个方法比较笨。法二:1、按照下图做,同时选中选择1和2,按住Ctrl键,下拉即可得到1,2,1,2,1,2......2、筛选要要插入的区域,筛选条件为1 ...
  • 行列式性质 将任意一行或者列的任意倍数到另一行(列),其行列式不变 理解: 就是将面积或者是体积平推一定的位置,平推平移又不会改变行列式的大小
  • 例如:有 a.csv文件内容如下 Name,Age,Tel, cz,27,13333333333, cc,29,13344444444, 修改后csv内容为: ID,School,Address,Name,Age,Tel, ,,, cz,27,13333333333, ,,, cc,29,13344444444,
  • 例如我想在一个文件的所有的最前面加入‘./’,需要进行字符串的连接:ff = open('./test_collect_suspect_webshell/xiao_ma_new_new.txt','w') //打开新的文件with open('./xiao_ma_new.txt','r') as f: //打开...
  • 主要方法是excel 单元格数据拼接,用你需要连接的符号用双引号引起来,然后用&amp;把符号和数据拼接, 看如下图: ...然后直接复制到数据库,去掉最后个的逗号,就可以where语句使用 ...
  • word排版时有时在一行内需要对两个部分分别靠左和靠右排版,如果只用空格的话就比较麻烦。 这是可以先选中左边的部分,最左边的标尺上点击一下,出现一个制表位,然后文字前面输入tab键即左对齐 同时也可以...
  • 批处理读取文本的每一行

    万次阅读 2010-05-19 08:00:00
     http://hi.baidu.com/zch11230/blog/item/125ddc8bba61fe15c8fc7aa2.htmlSharePoint迁移,要同步新旧用户SID,但是用户太多,所以决定用批处理一行行读取导出的User.txt(每一行是一条用户信息),针对每一条...
  • (1)给一个文件的每一行开头插入字符的方法:awk '{print "需要添加的字符" $0}' fileName (2)给一个文件的每一行结尾插入字符的方法:awk '{print $0 "需要添加的字符"}' fileName (3)给一个文件的每...
  • Vue 点击添加一行和删除一行

    万次阅读 2019-05-08 16:34:17
    我用的是:vue + element ui 直接代码。...通过对数组的操作,进行添加和删除;...这里应注意index这个索引,用于删除时,知道删的是哪个值; 3.删完对应的值,要对数组的index这个索引重组,否则删除时会出错;
  • 最近处理项目,动态生成word格式的合同,将word转为pdf,并为pdf添加文字、图片水印。 生成word的时候模板有动态添加表格,模板如下图: 下面先上结果图: 模板上的标签变量解析是自己写的。开始...
  • 2010Word自动编号,下一行缩进问题

    千次阅读 2014-03-13 12:36:37
    问题:自动编号之后,如截图所示编号1,编号后的下一行,也就是图片文字“吼吼吼吼吼吼……”那行,如何实现此行与编号3一致?   解决:1.把鼠标定位到需要调整的那一行,本例调节编号2,右键“段落”: ...
  • dos bat批处理的魅力 批处理读取文本的每一行 操作文件 http://blog.sina.com.cn/s/blog_872457fd0100tasi.html 批处理读取文本的每一行 (想了下,还是整个贴到自己空间来了) 我需要的是要读取每一...
  • linux文件尾部插入一行

    万次阅读 2016-10-26 10:02:44
    尾部插入: echo "abcdefg" >> filename
  • NAVICAT插入一行数据

    万次阅读 2015-07-08 15:00:22
    今天有一则趣事。 其他组需要navicat上的数据表里插入新的空白行,本来可以点击底部...于是自己尝试通过直接输入insert命令行来插入,测试的表的确是表最底部新增的一行。 但是每次新增一行都需要输入一串代
  • 但是如果createRow会重新生成一行,这时这一行之前的数据就会被覆盖 我能想到的解决办法就是插入数据前先把这行已有的数据读出来,然后连旧带新一起重新插入,但是感觉这样有些麻烦,有没有什么好办法呢?
  • 同理,若要求将总药品费用所占比例那行记录放在最后一行,只需把最后一行语句修改为 order by flag nulls first,drug_proportion desc即可。 总结: 找出需要特殊排序的那行记录(该记录一定具备可以与其他记录...
  • 使用Java文件里插入一行

    万次阅读 2008-09-14 20:23:00
    文件里增加一行的唯一方法就是读取原始文件,然后写入到一个临时文件,同时写入要插入的数据。然后删除原始文件,把临时文件改名为原始文件名。package net.java2000.io;import java.io.BufferedReader;import...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,162,025
精华内容 464,810
关键字:

怎样在目录中再加一行