edに複数行を表示

edに複数行を表示

edを開き、次のテキストを挿入しました。

This text
Is a
Test

ただし、次のように行1〜3を表示しようとすると:

1,3ki

そして印刷してみてください

'ip

それだけで印刷最後に見た。 3行(たとえば)をすべて表示する方法はありますか1,3?ありがとう。

答え1

ラベルは1行だけ表示できます。コマンドに一連の行を指定すると、コマンドは単一のアドレスのみを使用するため、最後に入力したアドレスのみが表示されkます。k

これはから来たものですed仕様POSIX標準で(私の強調):

0 アドレスが必要なコマンドに必要な数以上のアドレスが指定された場合、エラーが発生します。そうではなく、必要以上のアドレスがコマンドに提供された場合まず、指定された住所を評価し、有効な住所が最大になるまで破棄する必要があります。、指定されたコマンドについて。

このkコマンドは標準のコマンドと似ています(.)kx。つまり、最大1つのアドレス(デフォルトは現在の行)が必要です。

達成する目的に応じて、1行目と3行目に1つずつ2つのラベルを使用することも、そのラベルに関連付けられているアドレスとコマンドを持つ単一のラベルを使用することもできますp

したがって、2つのタグを使用するか、

1ka
3kb
'a,'b p

または、呼び出し時に単一のラベルと相対アドレス指定を使用しますp

1ka
'a,'a+2 p

または

3kb
'b-2,'b p

またはそのようなもの

3kb
'b; -2,. p

または

1ka
'a; .,+2 p

関連情報