sed删除指定行

简介: sed删除指定行

在Linux或类Unix系统中,sed(Stream Editor)可以用来编辑文本流,包括删除文件中指定的行。以下是几种不同场景下使用sed删除指定行的方法:

  1. 删除匹配特定模式的行
    如果你想删除包含某个特定字符串或模式的行,可以这样做:

    sed '/pattern/d' file
    

    这会删除所有包含pattern的行。

  2. 删除指定行号的单行
    若要删除文件中的第N行,命令如下:

    sed -i 'Nd' file
    

    其中,N 是你要删除的行号,-i 表示直接修改原文件(如果不加 -i,则会在标准输出显示修改后的结果,但原文件不会被改动)。

    例如,删除第2行:

    sed -i '2d' file
    
  3. 删除连续多行
    删除第5行到第10行:

    sed -i '5,10d' file
    
  4. 删除不连续的多行
    要删除不连续的行,你需要分别指定每一行:

    sed -i -e '1d' -e '3d' file
    

    这个命令会删除文件的第一行和第三行。

请注意,这些命令都是针对整个文件的操作。如果要在管道或者输入流中删除特定行,则可以直接替换 file 为管道符号 <input_stream>。同时,确保你有足够的权限来修改目标文件,否则在使用 -i 参数时可能会遇到问题。在实际操作前,建议先不加 -i 参数运行命令查看效果。

目录
相关文章
|
Linux Perl
sed删除匹配正则表达式的行
sed删除匹配正则表达式的行
678 1
|
Linux
`grep`命令搜索当前目录及其子目录下的所有文件
`grep`命令搜索当前目录及其子目录下的所有文件
5415 1
Debian 官方源换为国内的源的操作方法
apt-get update 报错,采用更换源的方式解决问题。
57062 0
|
SQL 安全 前端开发
详解开源数据库审计平台Yearning
详解开源数据库审计平台Yearning
12482 2
|
Linux
阿里云官方yum源
阿里云官方yum源
73475 0
|
8月前
|
存储 缓存 人工智能
阿里云Tair KVCache:打造以缓存为中心的大模型Token超级工厂
Tair KVCache 是阿里云推出的面向大语言模型推理场景的缓存加速服务,基于分布式内存池化和分级缓存体系,解决显存墙与带宽瓶颈问题。为万亿参数模型的高效推理提供技术保障,推动 AI 算力进化与规模化应用。
|
存储 Prometheus Kubernetes
阿里 sealer 是如何实现整个集群一键交付的?
顾名思义,和操作系统 .iso 镜像或 Docker 镜像类似,集群镜像是用一定的技术手段把整个集群的所有文件以一定格式打成的一个资源包。
1993 0
阿里 sealer 是如何实现整个集群一键交付的?
|
存储 Perl
sed处理多行模式(如括号匹配)
sed处理多行模式(如括号匹配)
1374 2
|
Perl
sed删除不匹配正则表达式的行(保留匹配行)
sed删除不匹配正则表达式的行(保留匹配行)
1380 2