zoukankan      html  css  js  c++  java
  • linux系统中如何删除空行

    1、测试数据

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat -A a.txt
    1 d f$
    $
    2 3 f$
    3 s 8$
    $
    $
    4 f a$
    d g 8$

    (删除完全的空行, 不包含空格和制表符)

    2、sed

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# sed '/^$/d' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# sed -n '/./p' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8

    2、grep

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# grep -v "^$" a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# grep "^." a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8

    3、awk

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# awk '$1 ~ /./ {print $0}' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# awk '/./ {print $0}' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# awk '$0 != ""' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8

    包含空格或支付表的情况。

    1、测试数据

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# sed -n l a.txt
    1 d f$
    $
    2 3 f$
    3 s 8$
       $
    \t\t$
    4 f a$
    d g 8$

    2、sed

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# sed '/^[\t ]*$/d' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# sed '/^\s*$/d' a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8

    2、awk

    root@PC1:/home/test/test/test# cat a.txt
    1 d f
    
    2 3 f
    3 s 8
    
    
    4 f a
    d g 8
    root@PC1:/home/test/test/test# awk NF a.txt
    1 d f
    2 3 f
    3 s 8
    4 f a
    d g 8
  • 相关阅读:
    3553: [Shoi2014]三叉神经树(树链剖分)
    Hive学习笔记(三)-- DML和DDL操作
    Hive学习笔记(二)
    Hive学习笔记(一)
    Hive安装步骤
    【Netty】NIO框架Netty入门
    【Netty】Netty入门之WebSocket小例子
    记录一次面试
    线程池面试
    反射面试
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/15463315.html
Copyright © 2011-2022 走看看