【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 | ライトテーマを使用する |
ts
オプションはタブストップの表示幅を指定します。例えば、「:set ts=8
」 はタブストップを8文字分に設定します。このように設定を変更することで、vi
エディタをより個人の好みに合わせて利用できます。
まとめ
これらのコマンドを組み合わせて使用することで、vi
エディタを自分の好みに合わせて設定することができます。