【嵌入式开发 Linux 常用命令系列 7.6 -- sed 替换指定字符串】
请阅读【嵌入式开发学习必备专栏】
文章目录
- sed 替换指定字符串
sed 替换指定字符串
背景:
找到当前目录下所有的.h 和 .c 文件 将他们中的字符 print_log替换为 demo_log
可以使用find
命令结合sed
命令在Linux环境下完成这项任务。下面是一个命令行示例,它搜索当前目录及其子目录下所有的.h
和.c
文件,并使用sed
替换文件中所有出现的test_log
为demo_log
:
find . \( -name "*.h" -o -name "*.c" \) -exec sed -i 's/test_log/demo_log/g' {} +
这个命令的组成部分解释如下:
find .
:从当前目录开始搜索。\( -name "*.h" -o -name "*.c" \)
:搜索所有以.h
或.c
结尾的文件。这里的\(
和\)
用于分组,-o
表示逻辑“或”操作。-exec sed -i 's/test_log/demo_log/g' {} +
:对找到的每个文件执行sed
命令。sed -i
表示直接修改文件,不输出到标准输出(即“就地”修改)。's/test_log/demo_log/g'
是sed
的替换命令,意味着将test_log
替换为demo_log
,g
标记表示全局替换(即一行中的所有匹配都被替换)。{}
是一个占位符,代表find
命令找到的文件名。+
表示将所有找到的文件名一次性传递给sed
命令,这比对每个文件单独调用sed
更高效。
请注意,这个命令使用了-i
选项,它会直接修改原始文件。建议在执行替换之前对重要文件进行备份,或者先运行命令而不带-i
选项来检查哪些更改将被应用,
例如:
find . \( -name "*.h" -o -name "*.c" \) -exec sed 's/test_log/demo_log/g' {} +
这将输出所有的替换结果到标准输出,而不会修改原文件。确认替换操作是所期望的之后,再运行带有-i
选项的命令进行实际的替换。
相关文章:
【嵌入式开发 Linux 常用命令系列 7.6 -- sed 替换指定字符串】
请阅读【嵌入式开发学习必备专栏】 文章目录 sed 替换指定字符串 sed 替换指定字符串 背景: 找到当前目录下所有的.h 和 .c 文件 将他们中的字符 print_log替换为 demo_log 可以使用find命令结合sed命令在Linux环境下完成这项任务。下面是一个命令行示例ÿ…...

C++语言的字符数组
存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。字符数组具有数组的共同属性。 1. 声明一个字符数组 char c[5]; 2. 字符数组赋值方式 (1)为数组元素逐一赋值 c[0]H c[1]E c[2]L c[3]L c[4]O (2&…...
24届电信红队实习生面经
sql注入的一些:原理、打的靶场的常见绕过、问了一些函数 (load_file、 outfile这些)、后利用 (mysql的udf提权的原理、条件、利用、其他像mssql这些数据库的提权手段、这些就没细问了, 就问有哪些方式; 问了有没有实战遇到mysql的…...

linux下使用jexus部署aspnet站点
1.运行环境 Centos 7 安装dos2unix工具 yum install dos2unix 安装jexus curl https://jexus.org/release/x64/install.sh|sudo sh2.网站部署 2.1. 将windows下的网站发布包Msc_qingdao_admin.zip上传到linux中, 然后解压后放入/var/www(没有则创建)目录下 r…...

代码随想录训练营Day 27|理论基础、力扣 77. 组合
1.理论基础 题目链接/文章讲解:代码随想录 视频讲解:带你学透回溯算法(理论篇)| 回溯法精讲!_哔哩哔哩_bilibili 来自代码随想录的网站: void backtracking(参数) {if (终止条件) {存放结果;return;}for (…...

Spring框架深度解析:打造你的Java应用梦工厂
想要在Java企业级应用开发中大展身手?Spring框架的核心容器是你不可或缺的伙伴! 文章目录 一. 引言1.1 介绍Spring框架的重要性1.2 阐述核心容器在Spring框架中的作用1.3 故事开端 二. 背景介绍2.1 描述Spring框架的发展历程2.2 概述Spring框架的主要特点…...
Python 正则表达式(一)
文章目录 概念正则函数match函数正则表达式修饰符意义: 常用匹配符限定符原生字符串边界字符 概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个…...
Cocos Creator 3.8.x报错:5302
在小游戏加载某个bundle后,如果报以下错误: 5302:Can not find class %s 说明bundle中某个预制件*.prefab引用了未加载的bundle的资源。 解决方法有两个: 1、将引用的资源移到预制件*.prefab相同的bundle下; 2、将…...

网页如何集成各社区征文活动
Helllo , 我是小恒 由于我需要腾讯云社区,稀土掘金以及CSDN的征文活动RSS,找了一下没发现,所以使用GET 请求接口对网页定时进行拉取清洗,甚至无意间做了一个简单的json格式API 最终网址:hub.liheng.work API:http://hub.liheng.wo…...

【知识碎片】2024_05_13
本文记录了两道代码题【自除数】和【除自身以外数组的乘积】(利用了前缀积和后缀积,值得再看),第二部分记录了关于指针数组和逗号表达式的两道选择题。 每日代码 自除数 . - 力扣(LeetCode) /*** Note: T…...
Day53代码随想录动态规划part13:300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组
Day52 动态规划part13 300.最长递增子序列 leetcode链接:300. 最长递增子序列 - 力扣(LeetCode) 题意:给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除&a…...
自己动手为wordpress注册一个Carousel轮播区块
要为WordPress注册一个Carousel轮播区块,你可以创建一个自定义Gutenberg块。以下是一个简单的示例,说明如何创建一个Carousel轮播区块: 1. 在你的主题目录中创建一个名为carousel-block的子文件夹。在这个文件夹中,创建一个名为c…...

基于Springboot的实习生管理系统(有报告)。Javaee项目,springboot项目。
演示视频: 基于Springboot的实习生管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&a…...

良心实用的电脑桌面便利贴,好用的便利贴便签小工具
在日常办公中,上班族经常需要记录临时任务、重要提醒或者突发的灵感。比如,在紧张的项目会议中,忽然想到一个改进的点子,或者是在处理邮件时,需要记下对某个客户的回复要点。在这些场景下,如果能直接在电脑…...

Eayswoole 报错 crontab info is abnormal
在执行一个指定的定时任务时 如 php easyswoole crontab show 报错 crontab info is abnormal 如下图所示: 查询了半天 修改了如下配置: 旧的 // 创建定时任务实例 $crontab new \EasySwoole\Crontab\Crontab($crontabConfig); 修改后&#…...

移动 App 入侵与逆向破解技术-iOS 篇
如果您有耐心看完这篇文章,您将懂得如何着手进行app的分析、追踪、注入等实用的破解技术,另外,通过“入侵”,将帮助您理解如何规避常见的安全漏洞,文章大纲: 简单介绍ios二进制文件结构与入侵的原理介绍入…...

2024服贸会,参展企业媒体宣传报道攻略
传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 2024年中国国际服务贸易交易会(简称“服贸会”)是一个重要的国际贸易平台,对于参展企业来说,有效的媒体宣传报道对于提升品牌知名度、扩大…...

CI/CD笔记.Gitlab系列.新用户管理
CI/CD笔记.Gitlab系列 新用户管理 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_285502…...
前端 JS 经典:JS 基础类型和 typeof
前言:JS 基础类型就 8 种,这是官方确定的,毋庸置疑。其中原始类型 7 种,对象类型 1 种。而 typeof 关键字是用来判断数据是属于什么类型的。 1. 原始类型 Number、Boolean、String、BigInt、symbol、Undefined、null typeof 18…...

Java入门基础学习笔记11——关键字和标识符
1、关键字 关键字是java中已经被赋予特定意义的,有特殊作用的一些单词,不可以把这些单词作为标识符来使用。 注意:关键字是java用了的,我们就不能用来作为:类名、变量名、否则会报错。 标识符: 标识符就是…...

Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...

Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...

2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...