如何用另一个文件中的一部分文本替换文件中两个标记之间的文本?

Thenaglecode

假设我在中有一段文字~/.bashrc

#~/.bashrc
# ...some commands...

# aliases
alias suicide='sudo rm -rf /'
# end aliases

# other commands

我希望将该文本块替换为另一个文件中两个标记之间包含的一些其他文本: stuff-to-place-in-bashrc.txt

# stuff-to-place-in-bashrc.txt
# ...stuff...

# aliases
alias ldir='ls * -d'
alias ithinklifeisworthliving='echo all good'
# end aliases

# ...more stuff...

我试过了

 sed -ne 's/# aliases\s+\(.*\)\s+# end aliases/\1/' stuff-to-place-in-bashrc.txt

但是我真的在黑暗中摇摆。有人可以帮我吗?

  1. 如何从中提取文本stuff-to-place-in-bashrc.txt

  2. 如何~/.bashrc用问题1中的提取文本替换另一部分

编辑

谢谢你们的更新,那些想知道为什么我想要这样的人:

允许对脚本文件进行精心挑选的更新,而不会覆盖用户添加的内容。对于共享和经常更新的标准操作环境很有用(例如我在Tyro的上一份用XP编码的工作)。

去疯狂的家伙。

伊克拉布

Ed是标准编辑器,因为您可以使用它来开发ed脚本并让它以交互方式进行工作,如之前所测试的那样。对于像这样的小文件.bashrc或任何代码文本,ed是有效的,因为ed可以一口气读取整个文件并与缓冲区一起使用。出于同样的原因,您不应将ed用于日志文件之类的大文件。

但是使用ed脚本,您的工作很快就完成了:

ed ~/.bashrc<<EOF
/^# aliases
+,/^# end aliases/-1d
-r !sed -n '/^# aliases/,/^# end aliases/p' stuff-to-place-in-bashrc.txt|grep -v '^#'
w
q
EOF

我使用类似的脚本来自动调整配置文件,例如ALS .asoundrc,以适应我将笔记本电脑带到的不同环境。

关于ed的最佳文档来自非常酷的PLAN9系统的简单手册页我将其翻译为ed.ps文件。如果您对PLAN9感兴趣,则应检查9fronthttp://cat-v.org/,因为原始的bell labs版本仍被保留,但是具有非常简单的文件系统。

关于编辑器战争,emacs,vim等的最终结论:acme规则!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在批处理中如何用另一个名称替换一部分文件名

来自分类Dev

从另一个文本文件替换文本文件中的行

来自分类Dev

如何用文件的第一部分替换文件?

来自分类Dev

如何用另一个文件中的内容替换bash脚本中特定字符之间的文本?

来自分类Dev

如何用用户输入替换文本文件中的行的一部分?

来自分类Dev

如何用另一个文件的头替换文件的头

来自分类Dev

如何用另一个列表中的项目替换文本中的字符串列表?

来自分类Dev

使用sed使用另一个文件的内容替换文件中的文本块

来自分类Dev

如何在html代码的另一部分或另一个textarea的textarea中显示文本

来自分类Dev

如何用另一个文件的头替换文件的头

来自分类Dev

如果一个文件中的一部分出现在另一个文件中,则打印它们中的行。这两个文件都长了几百万行

来自分类Dev

如何用另一个文件的输入替换文本字符串

来自分类Dev

查找文本的一部分并写入另一个文件

来自分类Dev

如何从另一个路径中删除路径的一部分?

来自分类Dev

将设置的一部分放在另一个文件中

来自分类Dev

如何用另一个文本文件替换标记之间的文本文件的一部分?

来自分类Dev

如何用另一个文件中的一部分文本替换文件中两个标记之间的文本?

来自分类Dev

如何删除文件的一部分并将其保存在另一个文件中-使用vi

来自分类Dev

从另一个文件替换文件中的文本

来自分类Dev

从另一个文件中的特定位置替换文本

来自分类Dev

用另一个文本文件的内容替换两个单词之间的字符串

来自分类Dev

从一个文件复制一行的一部分,并使用额外的文本附加到另一个文件

来自分类Dev

从一个文件到另一个文件,在两个匹配项之间替换文本

来自分类Dev

如何用另一个文件中的内容替换引号之间的文本?

来自分类Dev

如何用另一个词替换文本框中的一个词

来自分类Dev

从另一个文件替换一个文件中的文本

来自分类Dev

用另一个变量替换文本文件中的变量

来自分类Dev

如何从另一个文件中替换部分文件

来自分类Dev

如何用文本文件中的另一个数字替换特定数字(C++)

Related 相关文章

  1. 1

    在批处理中如何用另一个名称替换一部分文件名

  2. 2

    从另一个文本文件替换文本文件中的行

  3. 3

    如何用文件的第一部分替换文件?

  4. 4

    如何用另一个文件中的内容替换bash脚本中特定字符之间的文本?

  5. 5

    如何用用户输入替换文本文件中的行的一部分?

  6. 6

    如何用另一个文件的头替换文件的头

  7. 7

    如何用另一个列表中的项目替换文本中的字符串列表?

  8. 8

    使用sed使用另一个文件的内容替换文件中的文本块

  9. 9

    如何在html代码的另一部分或另一个textarea的textarea中显示文本

  10. 10

    如何用另一个文件的头替换文件的头

  11. 11

    如果一个文件中的一部分出现在另一个文件中,则打印它们中的行。这两个文件都长了几百万行

  12. 12

    如何用另一个文件的输入替换文本字符串

  13. 13

    查找文本的一部分并写入另一个文件

  14. 14

    如何从另一个路径中删除路径的一部分?

  15. 15

    将设置的一部分放在另一个文件中

  16. 16

    如何用另一个文本文件替换标记之间的文本文件的一部分?

  17. 17

    如何用另一个文件中的一部分文本替换文件中两个标记之间的文本?

  18. 18

    如何删除文件的一部分并将其保存在另一个文件中-使用vi

  19. 19

    从另一个文件替换文件中的文本

  20. 20

    从另一个文件中的特定位置替换文本

  21. 21

    用另一个文本文件的内容替换两个单词之间的字符串

  22. 22

    从一个文件复制一行的一部分,并使用额外的文本附加到另一个文件

  23. 23

    从一个文件到另一个文件,在两个匹配项之间替换文本

  24. 24

    如何用另一个文件中的内容替换引号之间的文本?

  25. 25

    如何用另一个词替换文本框中的一个词

  26. 26

    从另一个文件替换一个文件中的文本

  27. 27

    用另一个变量替换文本文件中的变量

  28. 28

    如何从另一个文件中替换部分文件

  29. 29

    如何用文本文件中的另一个数字替换特定数字(C++)

热门标签

归档