如何使用 sed 在特定行的开头添加文本?

2023-11-29

我想在字符下方的每行开头添加一些文本。在终端中使用 sed。

例如。如果我有一个textA.txt

@PL123
abcd
+
linewithmoretext
@PL456
efgh
+
2ndlinewithmoretext

等等,还有更多的行遵循相同的结构。

我希望我的输出是:textB.txt

@PL123
PREFIXabcd
+
linewithmoretext
@PL456
PREFIXefgh
+
2ndlinewithmoretext

我努力了

sed 's/^/PREFIX/' textA.txt > textB.txt 

但这会在所有行的开头插入 PREFIX。但我希望它更具体,也就是说我希望在包含 @PL 的行下方的每一行的开头添加 PREFIX。 有人可以帮我吗?我将非常感激。


每当@PL找到,读取下一行并添加到前面PREFIX to it.

sed '/@PL/{n;s/^/PREFIX/}' file
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 sed 在特定行的开头添加文本? 的相关文章

  • linux新手关于嵌入式linux设备驱动的问题

    最近在研究linux驱动 正如我读过的那些文章所说 设备驱动程序模块很可能会根据内核的需要自动加载 因此我想知道内核如何确定为特定设备 声卡 I2C spi 设备 等 我也无法彻底想象内核如何在启动时检测每个硬件设备 与嵌入式linux相关
  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • 如何告诉 mex 链接到 /usr/lib 中的 libstdc++.so.6 而不是 MATLAB 目录中的 libstdc++.so.6?

    现在 MATLAB 2012a 中的 mex 仅正式支持 gcc 4 4 6 但我想使用 gcc 4 7 风险自负 现在如果我直接用 mex 编译一些东西 它会抱怨 usr lib gcc i686 linux gnu 4 7 cc1plu
  • 我们如何在使用循环时调用 ansible playbook 中的变量

    我有两个文件 其中这些文件包含server names and server IP s 我想更改 替换一些特定的server names and IP addressees根据要求在两个文件中 这与这篇文章 因为它被要求开设一个新职位 ht
  • Pthreads - 高内存使用率

    我正在用 C 编写一些东西 在 256Mb 系统上的 Linux 中创建大量 Pthread 我通常有 200Mb 的免费空间 当我使用少量线程运行该程序时 它可以工作 但是一旦我让它创建大约 100 个线程 它就会出现错误 因为系统内存不
  • sed 替换为多行变量[重复]

    这个问题在这里已经有答案了 我正在尝试用跨多行的文本替换单词 我知道我可以简单地使用换行符 n 来解决这个问题 但我想保持字符串 干净 不包含任何不需要的格式 下面的例子显然是行不通的 read r d TEST lt
  • 应用程序中两个不同版本的库

    考虑一个场景 其中有两个不同版本的共享库 考虑 A 1 so 链接到 B so A 2 so 链接到 C so 现在 B so 和 C so 都链接到 d exe 当 B so 想要调用 A 1 so 中的函数时 它最终会调用 A 2 so
  • 如何将一个文本文件拆分为多个 *.txt 文件?

    我有一个文本文件file txt 12 MB 包含 something1 something2 something3 something4 有没有办法分开file txt分成 12 个 txt 文件 比方说file2 txt file3 t
  • Linux中如何避免sleep调用因信号而中断?

    我在 Linux 中使用实时信号来通知串行端口中新数据的到达 不幸的是 这会导致睡眠呼叫在有信号时被中断 有人知道避免这种行为的方法吗 我尝试使用常规信号 SIGUSR1 但我不断得到相同的行为 来自 nanosleep 联机帮助页 nan
  • 在本地主机上使用相同的 IP 和端口创建套接字

    我在 Linux 上看到奇怪的行为 我看到远程端和本地端都显示相同的 IP 和端口组合 以下是 netstat 输出 netstat anp 网络统计grep 6102 tcp 0 0 139 185 44 123 61020 0 0 0
  • 如何在C(Linux utf8终端)中打印“盒子抽屉”Unicode字符?

    我正在尝试显示 方框图范围 2500 257F 中的 Unicode 字符 它应该是标准 utf8 Unicode 标准 版本 6 2 我根本做不到 我首先尝试使用旧的 ASCII 字符 但 Linux 终端以 utf8 显示 并且没有显示
  • 在ubuntu中打开spyder

    我想在ubuntu中打开spyder Python IDE 通常我会在 shell 中编写 spyder 它会打开spyder IDE 现在 当我在shell中编写spyder时 它只是换行 什么也没有发生 类似于按 enter 我如何找回
  • 在 Linux 中重新启动时,新创建的文件变为 0 kb(数据被覆盖为空)

    我遇到了一个奇怪的问题 这让我发疯 当前的任务是在 root 用户第一次登录时启动一组文件 并在同一用户第二次登录时启动另一组文件 我决定使用 profile 和 bashrc 文件 并在第一次登录期间发生的任务结束时重新加载 bashrc
  • MySQL 与 PHP 的连接无法正常工作

    这是我的情况 我正在尝试使用 Apache 服务器上的 PHP 文件连接到 MySQL 数据库 现在 当我从终端运行 PHP 时 我的 PHP 可以连接到 MySQL 数据库 使用 php f file php 但是当我从网页执行它时 它只
  • Bash:将字符串添加到文件末尾而不换行

    如何将字符串添加到文件末尾而不换行 例如 如果我使用 gt gt 它将添加到文件末尾并换行 cat list txt yourText1 root host 37 echo yourText2 gt gt list txt root hos
  • 为什么此 NASM 代码会打印我的环境变量?

    本学期我刚刚完成计算机体系结构课程 除其他外 我们一直在涉足 MIPS 汇编并在 MARS 模拟器中运行它 今天 出于好奇 我开始在我的 Ubuntu 机器上摆弄 NASM 基本上只是将教程中的内容拼凑起来 并感受一下 NASM 与 MIP
  • Linux shell 从用户输入中获取设备 ID

    我正在为一个程序编写安装脚本 该程序需要在其配置中使用 lsusb 的设备 ID 因此我正在考虑执行以下操作 usblist lsusb put the list into a array for each line use the arr
  • 使用 libusb 输出不正确

    我用libusb编写了一个程序 我怀疑输出是否正确 因为所有条目都显示相同的供应商和产品 ID 以下是代码 include
  • 如何从 C++ 程序中重新启动 Linux?

    我有一个 Qt 4 GUI 我需要在下拉菜单中提供一个选项 允许用户选择重新启动计算机 我意识到这对于以其他方式重新启动计算机的能力来说似乎是多余的 但选择需要保留在那里 我尝试使用 system 来调用以下内容 suid root she
  • Python 3.4.3 subprocess.Popen 在没有管道的情况下获取命令的输出?

    我试图将命令的输出分配给变量 而不让命令认为它正在通过管道传输 原因是 如果正在通过管道传输 则相关命令会给出未格式化的文本作为输出 但如果从终端运行 则会给出颜色格式化的文本 我需要获取这种颜色格式的文本 到目前为止我已经尝试了一些事情

随机推荐

  • 导入时 EF4 去除表前缀

    我正在尝试自动重命名表名称以去掉 EF4 中的前导前缀 我知道这可以在 GUI 中完成 但是 我的公司在 Visio 中创建了数据库架构 并使用它在 SQL 中创建数据库创建脚本 我们经常这样做 有时有很多表 所以使用 GUI 并不是一个理
  • 在本地运行时更改 localhost 域

    我正在使用 Visual Studio 因为我的 IDE 正在开发 net Web 应用程序 我使用本地 IIS7 Web 服务器来运行该应用程序 它在 url gt 下运行http localhost 应用程序名称 我想将其更改为 gt
  • .net 中是否有现有的库可以将 JSON 解析为 Dictionary

    我希望能够将表示对象的 JSON 字符串解析到可以在 C 中使用的属性包 如字典 中 给定这个字符串 id 1 name 某个名称 某个参数 2 我想最终得到一个字典 其中包含 id name 和 some parameter 作为键 并分
  • mtcars ggplot 不知道如何处理类数字

    我只是想使用 mtcars 和 ggplot 制作一个简单的绘图 ggplot data mtcars aes x mpg y hp geom line mpg hp col cyl 但我收到错误 ggplot 不知道如何处理类数字 到底是
  • 如何在MS Access查询中直接使用系统用户名?

    我想知道是否有办法获取系统用户名并直接在 MS Access 查询中使用它 我已经在表单上的组合框的查询中设置了参数 并且还使用 ENVIRON 用户名 在 Access VBA 中获取了系统名称 请告诉我这是否可能 您需要创建一个返回用户
  • 是否可以使用变量作为格式中的填充参数!宏?

    我想模仿Python的rjust ljust and center函数使用format 宏 但我只能找到一个可以传递字符串和宽度的解决方案 如果你想传递 fill argument 是行不通的 文档告诉我可以提供变量format 对于宽度参
  • 如何运行具有详细输出的 PowerShell 脚本?

    我想知道是否有一种方法可以运行 PowerShell 脚本 以便打印脚本每一行的命令和输出 例如 在 Bash 中你可以这样写bash x myscript或放置一个set x在脚本的顶部 在批处理中 您将省略 echo off传统上留在脚
  • 选择与 SQLite 中的条件匹配的最新行

    假设我有一张桌子 Name status timestamp 我想选择与 status active 匹配的行 但仅选择那些具有最新时间戳的行 所以如果有这样的行 Bob active 5 10 2010 Bob active 6 12 2
  • 设置控件属性时,ASP.NET 引用字符编码会导致问题

    我有一个 ASP NET Web 应用程序 在某个时候我会这样做 mycontrol stringparameterforjscript document getElementById myotherparam value Hello 问题
  • JavaScript 不在本地页面上运行

    我有一个非常简单的网络扩展 当单击按钮时 它应该在新窗口中打开本地页面 function openMyPage var popupURL chrome extension getURL my page html chrome windows
  • 由于 InvalidAlgorithmParameterException,无法将工件从中心传输到中心:trustAnchors 参数必须为非空

    当我尝试安装时pom xmlmaven 项目时 出现以下错误 请帮忙 无法在项目 pm 上执行目标 org apache maven plugins maven resources plugin 2 6 resources default
  • 简单的 JavaScript 计数器(不使用 jQuery 或其他框架)[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我需要一个简单的 JavaScript 计数器 它在页面加载时从 0 开始计数 一直计数到 HTML 中定义的数字 这是 jQuery 版本 我怎样才能用纯 JavaScript
  • 如何做 X 道题,总结 Y 道难度

    我有一张桌子 问题 gt 问题 字符串 难度 整数 1 10 我需要创建一个方法 正如标题提到的 需要X问题数量 其难度应该总结Y 例如 getQuestions 2 10 gt 问题1 差异 4 问题2 差异 6 getQuestions
  • 创建 arraylist 的哈希图的最佳方法

    我有 100 万行 txt 格式的数据 格式非常简单 对于每一行 user1 value1 user2 value2 user3 value3 user1 value4 你知道我的意思 对于每个用户来说 它可能会出现多次 或者只出现一次 你
  • 如何修复 PHP MySQL 中达到 508 资源限制

    怎么修508 达到资源限制 in PHP MySQL 我的网站是用 PHP MySQL 和 javascript ajax 开发的 我的网站被屏蔽了 如何立即纠正这个问题 任何人都可以快速帮助我 请 但我得到了以下错误 Resource L
  • Spark-submit 无法检测 pip 中安装的模数

    我有一个 python 代码 它具有以下第 3 方依赖项 import boto3 from warcio archiveiterator import ArchiveIterator from warcio recordloader im
  • 如何从其他网页获取图像并显示在我的网站上

    我只想知道如何从其他网页获取图像并在我的网站上显示 案例流程为 在文本框中输入一些页面 URL 并提交 收集该网页 不是整个网站 中的所有图像并将其显示在我的网页中 因此 您需要从页面中获取图像 输入数据是该页面的地址 好吧 你有两个解决方
  • 如何处理OutOfMemory错误

    在我的应用程序中 我有照片 视频等 就图像而言 我已经进行了缩放 但有时我会得到一个OutOfMemoryError 如何有效地处理错误 在尝试加载图像之前 请检查图像大小是否小于可用内存 因此 处理 OutOfMemoryExceptio
  • 尝试使用 distutils 交叉编译 mingw32 的 SWIG Python 扩展时出错

    我正在尝试使用 distutils 模块在 Linux for Windows mingw32 上交叉编译一个简单的 SWIG Python 扩展 最终目标是为某些库编译 Python 包装器并能够在 Windows 上使用它 显然我从最基
  • 如何使用 sed 在特定行的开头添加文本?

    我想在字符下方的每行开头添加一些文本 在终端中使用 sed 例如 如果我有一个textA txt PL123 abcd linewithmoretext PL456 efgh 2ndlinewithmoretext 等等 还有更多的行遵循相