【Linux入門】vi エディタの便利な機能

文字列の検索

vi エディタでは、文字列を検索するために「/」コマンドを使用します。

/検索文字列:指定した文字列を検索

文字列の検索例を下に示します。

$ vi /etc/services

「Esc」キーを押してコマンドモードに切り替えます。

「name」を検索します。「/name」と入力します。

(略)
rlp             39/udp          resource        # resource location
nameserver      42/tcp          name            # IEN 116
nameserver      42/udp          name            # IEN 116
nicname         43/tcp          whois
nicname         43/udp          whois
tacacs          49/tcp                          # Login Host Protocol (TACACS)
tacacs          49/udp                          # Login Host Protocol (TACACS)
re-mail-ck      50/tcp                          # Remote Mail Checking Protocol
re-mail-ck      50/udp                          # Remote Mail Checking Protocol
domain          53/tcp                          # name-domain server
domain          53/udp
(略)
コマンド説明
/検索文字列指定した文字列を検索
nの検索結果に移動
Shift + n前の検索結果に逆方向に移動
文字列の検索

setコマンド:行番号を表示する

vi エディタで行番号を表示するかどうかは set コマンドを使用して設定できます。

「:set number」と入力します。

1 # /etc/services:
2 # $Id: services,v 1.55 2013/04/14 ovasik Exp $
3 #
4 # Network services, Internet style
5 # IANA services version: last updated 2013-04-10
6 #
7 # Note that it is presently the policy of IANA to assign a single well-kno      wn
8 # port number for both TCP and UDP; hence, most entries here have two entr      ies
9 # even if the protocol doesn't support UDP operations.
10 # Updated from RFC 1700, ``Assigned Numbers'' (October 1994).  Not all por      ts
  • :set number」:行番号を表示
  • :set nonumber」:行番号を非表示
コマンド説明
/検索文字列指定した文字列を検索
nの検索結果に移動
Shift + n前の検索結果に逆方向に移動
行番号の表示

setコマンドの例

以下に、set コマンドの一部の例をまとめます。

コマンド説明
:set number行番号を表示
:set nonumber行番号を非表示
:set autoindent自動インデントを有効にする。
:set tabstop=4タブの表示幅を4に設定
:set ts=<文字数>タブストップの表示幅を設定
:set hlsearch検索時にハイライト表示を有効にする。
:set nohlsearchハイライト表示を無効にする。
:set list不可視文字を表示
:set nolist不可視文字を非表示
:set background=darkダークテーマを使用する。
:set background=lightライトテーマを使用する
setコマンドの例

 ts オプションはタブストップの表示幅を指定します。例えば、「:set ts=8」 はタブストップを8文字分に設定します。このように設定を変更することで、vi エディタをより個人の好みに合わせて利用できます。

まとめ

 これらのコマンドを組み合わせて使用することで、vi エディタを自分の好みに合わせて設定することができます。