Linux命令用另一个字符串替换大文件中的字符串

2023-11-27

我有一个巨大的 SQL 文件在服务器上执行。转储来自我的机器,其中有一些与我的机器相关的设置。所以基本上,我希望每次出现"c://temp"被替换为"//home//some//blah"

如何从命令行完成此操作?


sed对于大文件来说是一个不错的选择。

sed -i.bak -e 's%C://temp%//home//some//blah%' large_file.sql

这是一个不错的选择,因为不需要立即读取整个文件来更改它。引用手册:

流编辑器用于执行 输入的基本文本转换 流(文件或来自 管道)。虽然在某些方面相似 到允许脚本化的编辑器 编辑(例如 ed),sed 的工作原理是 只经过一次 输入,因此更多 高效的。但这是 sed 的能力 过滤管道中的文本 它特别区别于 其他类型的编辑器。

相关手册部分是here。下面是一个小解释

-i.bak 启用就地编辑,留下带有 .bak 扩展名的备份副本

s%foo%bar% 使用 s,替换命令,其中 替换第一个字符串的匹配项 在 % 符号“foo”之间,表示第二个 字符串,“酒吧”。通常写为 s// 但因为你的弦有很多 斜杠,这样更方便 将它们更改为其他内容,以便您 避免必须逃避他们。

Example



vinko@mithril:~$ sed -i.bak -e 's%C://temp%//home//some//blah%' a.txt
vinko@mithril:~$ more a.txt
//home//some//blah
D://temp
//home//some//blah
D://temp
vinko@mithril:~$ more a.txt.bak
C://temp
D://temp
C://temp
D://temp
  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux命令用另一个字符串替换大文件中的字符串 的相关文章

  • 如何使用 Net::SSH::Perl 和公钥?

    我正在尝试使用Net SSH Perl使用公钥与此代码进行连接 my ssh Net SSH Perl gt new host debug gt 1 die 我将密钥放在 root ssh id rsa 和 root ssh identit
  • 从 Process.StandardOutput 重定向二进制数据会导致数据损坏

    On top of this https stackoverflow com questions 8978390 passing command line arguments from c sharp to a external exe 8
  • 在从命令行运行的 NestJS 脚本中使用服务

    我知道如何从命令行运行脚本 使用npm or npx ts node script ts 正如所述here https stackoverflow com questions 60704316 run nestjs script from
  • Ruby:在 Ubuntu 上安装 rmagick

    我正在尝试在 Ubuntu 10 04 上安装 RMagick 看起来here https stackoverflow com questions 1482823 is there an easy way to install rmagic
  • 为什么此 NASM 代码会打印我的环境变量?

    本学期我刚刚完成计算机体系结构课程 除其他外 我们一直在涉足 MIPS 汇编并在 MARS 模拟器中运行它 今天 出于好奇 我开始在我的 Ubuntu 机器上摆弄 NASM 基本上只是将教程中的内容拼凑起来 并感受一下 NASM 与 MIP
  • Crontab 每 5 分钟一次 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我如何告诉 crontab 每 5 分钟运行一次 但从每小时的第二分钟开始 换句话说 我想在以下时间执行我的脚本minute 5 2 例如 我的脚本应
  • 如何使用 Bash 编写二进制文件?

    我的问题是我需要创建一个包含以下确切字节的文件 48 00 49 00 我不能使用C perl 其他脚本语言 目标是嵌入式设备 我使用 awk 尝试过 在桌面上它确实有效 awk BEGIN printf c c c c 48 00 49
  • LINUX:如何锁定内存中进程的页面

    我有一个 LINUX 服务器 运行一个具有大量内存占用的进程 某种数据库引擎 该进程分配的内存太大 需要将其中一部分换出 换出 我想做的是将所有其他进程 或正在运行的进程的子集 的内存页面锁定在内存中 以便只有数据库进程的页面被换出 例如
  • 如何在 Perl 中使用 use strict 一次一行处理多行字符串?

    我正在尝试找出 PBP 批准的正确方法来一次一行处理多行字符串 许多 Perl 编码人员建议将多行字符串视为文件句柄 除非您在脚本中使用 use strict 否则它可以正常工作 然后 您会收到编译器发出的警告 提示在使用严格引用时无法使用
  • 在 PyCharm 中运行命令行命令

    你好 我正在使用Python 但之前从未真正使用过它 我收到一些命令 需要在终端中运行 基本上 python Test py GET feeds 我正在使用 PyCharm 我想知道是否有办法从该 IDE 中运行这些相同的命令 按 Alt
  • Linux 使用 boost asio 拒绝套接字绑定权限

    我在绑定套接字时遇到问题 并且以用户身份运行程序时权限被拒绝 这行代码会产生错误 acceptor new boost asio ip tcp acceptor io boost asio ip tcp endpoint boost asi
  • 为什么 fork 炸弹没有使 android 崩溃?

    这是最简单的叉子炸弹 我在许多 Linux 发行版上执行了它 但它们都崩溃了 但是当我在 android 终端中执行此操作时 即使授予后也没有效果超级用户权限 有什么解释为什么它没有使 Android 系统崩溃吗 一句话 ulimit Li
  • grep 排除文件的数组参数

    我想从我的文件中排除一些文件grep命令 为此我使用参数 exclude excluded file ext 为了更容易阅读 我想使用包含排除文件的 bash 数组 EXCLUDED FILES excluded file ext 然后将
  • awk 在循环中使用时不打印任何内容[重复]

    这个问题在这里已经有答案了 我有一堆使用 file 1 a 1 txt 格式的文件 如下所示 A 1 B 2 C 3 D 4 并使用以下命令添加包含每个文件名称的新列 awk print FILENAME NF t 0 file 1 a 1
  • 在内核代码中查找函数的最佳方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始浏览内核代码 遇到的一件事是如何跟踪函数调用 结构定义等 有没有一种好的方法可以快速跳转到函数定义并退出 我尝试过 Source N
  • 为什么 Linux 原始套接字的 RX 环大小限制为 4GB?

    背景 我试图mmap 我的原始套接字的 RX 环形缓冲区64 bitLinux 应用程序 我的环由 4096 个块组成 每个块大小为 1MB 总共 4GB 请注意 每个 1MB 块中可以有许多帧 如果您好奇 请参阅此文档了解背景信息 htt
  • Perl YAML 模块无法识别标量类型

    我加载以下 yaml 文件 foo bar s 1 hx 0x34 用这段代码 use YAML qw LoadFile Dump use Data Dumper my d LoadFile test yaml print Dumper d
  • 如何确保我的代码永远不会直接退出?

    eval require file subsequent code goes here If file包含一个exit语句 后面的代码就没有机会运行 如何解决以便后续代码始终有机会运行eval已经完成了 中止是不可能的exit call f
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String
  • FileOutputStream.close() 中的设备 ioctl 不合适

    我有一些代码可以使用以下命令将一些首选项保存到文件中FileOutputStream 这是我已经写了一千遍的标准代码 FileOutputStream out new FileOutputStream file try BufferedOu

随机推荐

  • 致命错误 Varien_Autoload 未找到

    今天是个好日子 我使用示例数据安装了 magento 刷新了页面 一切似乎都正常 我的整个商店充满了样本数据 几分钟后我再次刷新 从那以后我不断收到此错误 PHP 致命错误 在第 53 行 var www vhosts shop cyber
  • libvlc 流屏幕的一部分

    我想使用 vlc 库流式传输屏幕的一部分 我写了一个小例子 include
  • DialogFragment 和 onDismiss

    我正在使用一个DialogFragment 我是这样展示的Activity DialogFragmentImage dialog DialogFragmentImage newInstance createBitmap dialog onD
  • 将 Java2D 保存为 SWF(闪存)

    我正在尝试将 Java2D 中绘制的矢量图像的输出保存到 SWF 文件中 有很多很棒的库可以将 java2D 输出保存为 SVG BATIK 和 PDF itext 等内容 但我找不到 SWF 库 有任何想法吗 我刚刚得到一个使用的示例雪碧
  • PHP:从链接标题中删除“http://”

    我有一个看起来像这样的字符串 string a href http google com http google com a 我怎样才能删除http 部分来自链接文本 但将其保留在 href 属性中 如果不使用完整的解析器 这可能在大多数情
  • 为什么 Rust 忽略 &str 的生命周期检查?

    fn main let strA a let result let strB abc result longest strA strB Will return strB println The longest string is resul
  • Aptana 1.5“svn:解决大小写错误”

    我今天安装了 Aptana 1 5 但是安装后 当我尝试提交 更新 修复等时 我的所有 SVN 项目都会出现这样的错误 Access is denied svn Error resolving case of C Users Brayn M
  • 如何添加标记 onClick 并在 google-maps-react 中显示我的地理位置?

    我在谷歌地图文档上发现了很多有用的信息 但在 html 中简单使用 js 以防万一react老实说我不明白 源代码 import React Component from react import Map InfoWindow Marker
  • C、C++、C#、Java 和 Python 中的声明、定义和初始化 [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 上述每种语言中的术语含义是什么 为什么这些语言在这方面有所不同 无论它们在哪里 如果有的
  • Google 地图距离和方向 API 之间的区别

    Google 为 1 距离矩阵和 2 方向服务提供 API 我试图搜索1和2之间的区别 我的任务是 当用户从源移动S到目的地D使用某种路径 我们需要展示用户实际走过的路径 在谷歌地图上 实现它的最佳方法是什么 使用 1 距离矩阵 API 或
  • jQuery 自动完成:移动列表位置?

    我想知道是否可以将下拉列表向下移动 4px 我尝试过多种风格 ui autocomplete 包括 margin top 4px top 4px 但它似乎不起作用 接受的答案是不再有效因为the offset该选项在 jQuery UI v
  • 如何从控制台中的标准输入读取内容?

    我想从命令行读取标准输入 但我的尝试已经结束 程序在提示我输入之前就退出了 我正在寻找相当于控制台 ReadLine in C 这就是我目前所拥有的 package main import bufio fmt os func main re
  • 使用 python3.6 进行 Django 迁移错误:根:未找到哈希 sha3_224 的代码

    你好我读过Django 教程我有一个与特定相关的错误sha3 224迁移过程中的哈希函数 如何解决这个问题呢 谢谢 venv linuxoid linuxoid ThinkPad L540 myprojects myproject pyth
  • 使用 INDEX 和 MATCH 在表数组中进行两列查找

    我希望 Excel 显示具有两个匹配单元格的表数组中的值com cd and div cd using INDEX and MATCH 我尝试过以下公式 但它不起作用 INDEX K9 K53 MATCH K3 I9 I53 0 MATCH
  • 在 data.table 列中使用列表

    In data table可能有类型的列list我第一次尝试从这个功能中受益 我需要存储表的每一行dt一些来自 rApache Web 服务的评论 每个评论都会有一个用户名 日期时间和正文项 不要使用带有一些奇怪 不寻常的字符的长字符串来将
  • Android + OpenCV:使用CameraBridgeViewBase时如何设置相机分辨率

    您好 我正在使用 OpenCV4Android 人脸检测示例 我想知道如何获得相机的分辨率并将其设置为其他值 在此示例中 CameraBridgeViewBase 我在对象上看到了这一点 private CameraBridgeViewBa
  • 如何修复 python socket-io 服务器中的“Access-Control-Allow-Origin”错误

    我正在创建一个使用 Vue js 作为客户端 和 Python 作为服务器 的项目 Python用于一些计算 Vue js用于接口 我使用 python socketio 连接它们 https python socketio readthe
  • java中ArrayList的排序

    我有一个 ArrayList of String 的 ArrayList 在 Outer ArrayList 的每个索引上 每个 Inner ArrayList 有四个项目 有四个参数 联系人 ID 联系人姓名 联系地址 联系电话 现在我想
  • Telegram 机器人向机器人发送消息

    我编写了一个电报机器人 这在发送给群组或用户时效果很好 不过我有一个特殊的要求 我需要能够发送给另一个机器人 将两个机器人以管理员身份添加到组时 我仍然无法通过第二个机器人接收消息 我只能通过添加到该组的真实用户帐户看到它 我缺少什么 我使
  • Linux命令用另一个字符串替换大文件中的字符串

    我有一个巨大的 SQL 文件在服务器上执行 转储来自我的机器 其中有一些与我的机器相关的设置 所以基本上 我希望每次出现 c temp 被替换为 home some blah 如何从命令行完成此操作 sed对于大文件来说是一个不错的选择 s