Linuxでテキストファイルを編集する!(vi)

viコマンドを使用してテキストファイルを編集します。viコマンドは環境を選ばず使用できるところが強みです。

閲覧モードと編集モードを使いこなす!

viコマンドでは、閲覧モードと編集モードが存在します。起動直後は閲覧モードなので、テキストファイルを編集する場合は、編集コマンドを押して、編集モードに移行します。どちらのモードかわからなくなったら、[ESC]キーを押して、閲覧モードに移ります。

カーソルを移動する!

カーソルを移動は、閲覧モードで以下のキーを押します。カーソルキーも使用できます。

h        # 左
j        # 下
k        # 上
l        # 右

文字を編集する!

文字を編集する場合は、以下のキーを押して編集モードに入ります。

i        # 挿入
a        # 追記
x        # 削除
r        # 1文字上書き
R        # 複数文字上書き
o        # 改行して追記

行を編集する!

行を編集するコマンドです。「dd」や「yy」の前に数字を指定すると、その行数分処理されます。

dd       # 行削除(削除内容はバッファにコピーされる)
yy       # 行コピー(コピー内容はバッファにコピーされる)
p        # バッファにコピーした内容のペースト

行数を指定してカーソルを移動する!

以下の方法で、指定行にカーソルを移動できます。

[数字(指定行番号)]G

文字を検索してカーソルを移動する!

文字列を検索して、カーソル移動する場合は、以下の操作を行います。

/[検索文字列][Enter]

次にマッチする場所にカーソルを移動します。

n

ファイルの保存あるいはviを終了する!

:w        # 編集内容を保存します。
:wq       # 編集内容を保存して、viを終了します。
:wq!      # Read Onlyのファイルであっても、編集内容を保存して、viを終了します。
:q        # viを終了します。編集中の内容が合った場合は、警告が表示されます。
:wq!      # 編集内容を破棄して、viを終了します。

行番号の表示

行番号の表示/非表示を設定します。

:set number

行番号を非表示にします。

:set nonumber

自動インデントの有無

行番号の表示/非表示を設定します。

:set autoindent

行番号を非表示にします。

:set noautoindent

TABの表示空白文字数

TABを何文字の空白文字で表示するかを設定します。デフォルト8文字ですが、以下、4文字に変更する例です。

:set tabstop=4

環境設定の保存

環境設定を保存するには、「~/.vimrc」ファイルに、以下のようにsetコマンドを記述しておきます。

$ vi ~/.vimrc
set number

おわりに

viコマンドを使用して、テキストファイルを編集する方法をまとめました。

関連記事

関連書籍(Amazon)