linux - sed 命令如何替换多行内容?
大家讲道理
大家讲道理 2017-04-17 15:30:20
[Linux讨论组]

现在有个 setup.py 文件有包含以下一段内容:

# 其它代码 ...

speedups = Feature(
    'optional C speed-enhancement module',
    standard=True,
    ext_modules=[
        Extension('markupsafe._speedups', ['markupsafe/_speedups.c']),
    ],
)

# 其它代码 ...

如何用 sed 命令把这几行内容删掉或者注释掉?


OK,刚刚看了文档试了下,问题解决了,命令行如下:

cat setup.py | sed "/^speedups = Feature/,/^)$/s/.*//g"

先选定从 speedups = Feature 开始到右括号 ) 结束的范围内的文本行,然后都替换成空。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
天蓬老师

简单的,也可以用 d 指令实现:

sed -i "/^speedups = Feature/,/^)$/d" setup.py
ringa_lee

sed -i s/^/#/g setup.sh 添加注释

sed -i "/^speedups = Feature/,/^)$/d" setup.py 删除

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号