GNU/Linux >> Linux の 問題 >  >> Linux

Vimの各行の先頭にテキストを挿入する方法

Techglimpseの常連読者であるAshiさんからの質問です。彼は、Vimエディターの各行の先頭にテキストを挿入する方法を尋ねます。

各行の先頭にテキストを挿入するVimコマンドがあるかどうか知りたかっただけですか?たとえば、各行の先頭に「hello」を挿入しますか?

Vimエディターの各行の先頭にテキストを挿入する方法

はい、それは可能です。以下に示すように、代替コマンドを使用できます。

# vim sample.txt

方法1: 以下のコマンドを入力してEnterキーを押します。

:%s/^/hello/

スペースまたはその他の特殊文字を追加する場合は、同じものをテキストに追加するだけです。

:%s/^/hello : /

10行目から20行目(つまり範囲)の先頭にテキストを挿入することもできます。

:10,20s/^/hello : /

注: 上記の例では、10行目から20行目の先頭にテキストを挿入します。 行方不明の%に注意してください 、これはすべての行を置き換えることを意味します。

方法2:マーカーを使用する

ステップ1: テキストを挿入する行にカーソルを移動します。

ステップ2: ESCを押します maと入力します 。この手順では、マーカー aを作成します

ステップ3: テキストの挿入を停止する行にカーソルを移動します。

ステップ4: タイプ

:'a,.s/^/hello : /

コマンドは複雑に見えるかもしれませんが、範囲を使用するのと似ています。ステップ2で、新しいマーカー aを作成します 。次に、コマンドは typewriter apostrophe(')で始まります マーカーaが続きます –マーカーとコンマで行の先頭を示す(、) 続いてdot(。)and s コマンド-置換の終了を示します。にんじん(^) 行の始まりを表します。

方法3:ビジュアルエディターを使用する。

ステップ1: テキストを挿入する行にカーソルを移動します。

ステップ2: Ctrl + Vを押します Visual Blockに入る カーソルを使用して最初の列を選択します テキストの挿入を停止する行まで。

ステップ3: Shift + iを押して、挿入モードに入ります 。挿入するテキストを入力してESCを押します 。手順2で選択したすべての行にテキストが自動的に挿入されているのがわかります。

それでおしまい!トリックが好きですか?コメントを教えてください。


Linux
  1. 一致したテキストを行に追加しますか?

  2. コマンドへの引数としてテキストファイルの各行を解析する方法は?

  3. Vimでファイルの最初または最後に移動する[クイックヒント]

  1. Windows 10にVim(vi)をインストールする方法

  2. sed を使用してファイルの 1 行目にテキストを挿入するにはどうすればよいですか?

  3. コマンドラインからクリップボードにテキストをパイプする方法

  1. ファイルの最初の行の前にテキストを挿入する方法は?

  2. vi / vimで行番号を表示するにはどうすればよいですか?

  3. ファイルを分割し、各部分の最初の行を保持する方法は?