如何30秒内提升自信?

sed 是 Linux/Unix 中强大的流编辑器,其 d 命令用于删除匹配的行,它直接修改输入流(文件或管道数据),是文本处理的核心工具之一,以下是详细用法解析:


d 命令核心作用

  • 删除指定行:根据行号、模式匹配或范围选择删除文本。
  • 原地编辑:常与 -i 参数联用直接修改文件(慎用!建议先备份)。
  • 流式处理:高效处理大文件,无需加载全部内容到内存。

基础语法与示例

删除单行

# 删除包含 "error" 的行
sed '/error/d' filename.txt

删除连续行范围

# 删除第2到第5行
sed '2,5d' filename.txt
# 删除从 "START" 行到 "END" 行的内容
sed '/START/,/END/d' filename.txt

组合条件删除

# 删除空行(含空格/Tab)
sed '/^[[:space:]]*$/d' filename.txt
# 删除注释行(以 # 开头)
sed '/^#/d' config.conf

反向选择删除(保留匹配行)

# 删除所有非 "important" 行(保留含 "important" 的行)
sed '/important/!d' data.txt

高级技巧

结合正则表达式

# 删除以数字开头的行
sed '/^[0-9]/d' file
# 删除含日期格式(如 2025-01-01)的行
sed '/[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}/d' log.txt

与其他命令组合

# 删除第10行后输出到新文件
sed '10d' input.txt > output.txt
# 删除空行并直接修改原文件(-i 参数)
sed -i '/^$/d' filename.txt  # 务必先备份!

多重删除规则

# 同时删除空行和注释行
sed -e '/^$/d' -e '/^#/d' config.conf

注意事项

  1. 备份原文件:使用 -i 前先备份,避免误操作:
    cp file.txt file.bak && sed -i '1d' file.txt
  2. 行号变化:删除操作会动态改变后续行号,需谨慎设计范围。
  3. 模式匹配:默认使用基础正则表达式(BRE),复杂模式建议用 -E 启用扩展正则。
  4. 效率优化:处理大文件时,避免使用 (结尾行)等可能降低性能的匹配。

经典应用场景

  1. 清理日志:删除含特定错误码的行。
  2. 预处理数据:移除 CSV 文件中的空行或注释。
  3. 配置精简:删除配置文件中的默认注释。
  4. 脚本自动化:在 Shell 管道中快速过滤文本。

sed d 是文本处理的瑞士军刀,通过行号、模式或范围精准删除内容,关键点:

  • 安全第一:用 > 重定向或备份后再 -i
  • 正则赋能:结合 ^ 等实现复杂匹配。
  • 场景适配:从简单行删除到多条件过滤,灵活应对需求。

引用说明参考 GNU sed 官方手册及 POSIX 标准,经实践验证,更多高级用法可查阅:

  • GNU sed 手册
  • POSIX sed 规范

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6183.html

(0)
酷番叔酷番叔
上一篇 2025年7月4日 10:22
下一篇 2025年7月4日 10:43

相关推荐

  • 智能交通巨额投资,资金流向何处?效益如何?智能交通投资去向

    2026年国内智能交通领域正经历从“基建铺设”向“数据运营”的范式转移,巨额投资的核心逻辑已不再是单纯的路网扩建,而是聚焦于车路云一体化系统的深度落地与AI大模型在交通治理中的实战应用,预计2026年相关市场规模将突破万亿级,成为拉动新质生产力的关键引擎,投资风向:从“硬连接”到“软智能”的战略跃迁过去五年,智……

    2026年5月20日
    7000
  • 国际互联网中台负载均衡原理与挑战是什么,负载均衡原理

    国际互联网中台负载均衡的核心在于通过智能流量调度、多活架构部署及边缘节点协同,实现全球业务的高可用、低延迟与弹性扩容,其本质是解决跨国网络波动与本地化合规双重挑战的技术枢纽,全球流量调度的技术演进与核心逻辑在2026年的数字化语境下,负载均衡已不再仅仅是简单的请求分发,而是演变为具备感知能力的“智能交通指挥中心……

    2026年5月15日
    7000
  • 如何命令蚂蚁?

    人类通过研究蚂蚁的生物特性和交流机制,掌握间接影响、引导或利用其群体行为的方法,而非直接控制。

    2025年7月1日
    21800
  • ASP中随机生成9位数的代码实现方法是什么?

    在Web开发中,随机数生成是常见需求,尤其在需要唯一标识、临时验证码或动态编号等场景,ASP(经典ASP)作为早期广泛使用的服务器端脚本技术,提供了内置的随机数生成功能,本文将详细介绍如何使用ASP生成9位数随机数,包括基础原理、实现步骤、注意事项及实际应用场景,帮助开发者高效解决此类需求,ASP随机数生成基础……

    2025年11月8日
    15700
  • 智能交通竞争,谁是未来交通主导者?智能交通未来主导者是谁

    2026年智能交通竞争的核心已从单一的技术堆砌转向“车路云一体化”的全生态闭环,百度Apollo、华为与特斯拉在自动驾驶算法、高精地图合规性及城市级落地场景上形成差异化壁垒,最终胜出者将是能打通数据孤岛并实现商业化闭环的企业,技术路线之争:单车智能与车路协同的博弈百度Apollo的“车路云”全栈优势百度在202……

    2026年6月30日
    4900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信