【实用手记】使用sed命令替换指定文件内容

8 篇文章 0 订阅
6 篇文章 0 订阅

注:带有【实用手记】标题的文章主要用于临时备忘,内容不甚详尽,但之后也会视需要对相关知识进行完善。


sed跟awk一样,是功能十分强大的文件处理命令,全称stream editor。这里仅介绍最常见最实用的用法,替换指定文件内容:

sed -i 's/src/dest/g' filepath

博主一般用于CMakeLists.txt 的内容替换,进而使用cmake快速生成makefile。下面是一个CMakeLists.txt 示例:

cmake_minimum_required(VERSION 2.8)
project( main )
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( main main.cpp )
target_link_libraries( main ${OpenCV_LIBS} )

当我们要将这个CMakeLists.txt应用于生成fun.cpp的makefile时,就要将main替换为fun,命令如下:

sed -i 's/main/fun/g' CMakeLists.txt
这时原文件就会被修改为:

cmake_minimum_required(VERSION 2.8)
project( fun )
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( fun fun.cpp )
target_link_libraries( fun ${OpenCV_LIBS} )

如果你只是想要做临时替换(不修改原文件内容),那么:

sed 's/src/dest/g' filepath
修改过的文件内容将会直接打印在终端上,需要使用直接复制即可,而原文件内容不会被修改。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值