如何移动到 ed 中的某一行而不打印该行?

如何移动到 ed 中的某一行而不打印该行?

在 GNU ed 中,如何移动到一行而不打印它?如果我想移动到第 123 行,我会输入123 Enter,但这也会打印该行的内容。有没有办法在移动到一行时不打印?

答案1

大多数时候,您要么想要移动到一行并打印它(如果没有给出其他命令,这是默认操作),要么移动到一行并执行一些其他命令。想要移动到一行而不继续执行某些命令有点不寻常......标准中没有“无操作”命令ed

GNUed引入了一个名为 的非标准命令#,它不执行任何操作。

这意味着您可以使用该命令1;#移至第一行,然后调用 no-op 命令#。您不能使用,1#因为#不占用任何地址。看起来像n;(对于某些行号)的地址n被解释为“首先转到行n”,因此这4;/foo/意味着第 4 行之后包含 的第一行foo。与which 比较的是从第4 行到相对于当前行4,/foo/匹配的第一行的几行范围。/foo/

摘要: 命令序列123;#移至第 123 行,然后在 GNU 中不执行任何操作ed

相关内容