vimとは
vimとは、CentOS8のテキストエディタです。Windowsのメモ帳やサクラエディタのようなものです。viの改良版がvimで矩形選択ができるようになっています。
手順
1.練習用ファイルの準備
2.ノーマルモードの練習
3.挿入モードの練習
4.ビジュアルモードの練習
5.コマンドモードの練習
1.練習用のファイルの準備
1-1.練習用ファイルの準備
今回はvimの練習をするために、sshd_configファイルを使います。
# ファイルをコピー(hosts)
[root@CE08PRD101 ~]# cp /etc/hosts /root
# ファイルをコピー(sshd_conf)
[root@CE08PRD101 ~]# cp /etc/ssh/sshd_config /root
# ファイルのコピーを確認
# コピーしたファイルがあることを確認する
[root@CE08PRD101 ~]# ll /root
(省略)
-rw-r--r-- 1 root root 158 9月 21 12:39 hosts
-rw------- 1 root root 4425 9月 21 20:15 sshd_config
(省略)
# ファイルの編集
[root@CE08PRD101 ~]# vim hosts
1-1.ファイルの編集
# ファイルの編集
[root@CE08PRD101 ~]# vim hosts
最初の画面は、「ノーマルモード」で開かれますす。この画面では、主にカーソルの移動をします。
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
# SELINUX=enforcin.
#SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
~
~
~
~
"selinxu_conf" 15L, 566C 2,1 全て
行数を表示します。
以下を入力し、enterを押します。
:set nu
1
2 # This file controls the state of SELinux on the system.
3 # SELINUX= can take one of these three values:
4 # enforcing - SELinux security policy is enforced.
5 # permissive - SELinux prints warnings instead of enforcing.
6 # disabled - No SELinux policy is loaded.
7 # SELINUX=enforcin.
8 #SELINUX=disabled
9 # SELINUXTYPE= can take one of these three values:
10 # targeted - Targeted processes are protected,
11 # minimum - Modification of targeted policy. Only selected processes are protected.
12 # mls - Multi Level Security protection.
13 SELINUXTYPE=targeted
14
15
~
~
:set nu
2.ノーマルモードの練習
ノーマルモードは主にカーソルの移動をするモードです。移動以外にも、文字の削除、コピー&ペースト、検索、置換などもできます。以下の手順で練習してみましょう。
■ カーソルの移動
カーソルの移動は「j」(下)、「l」(右)、「h」(左)、「k」(上)です。
以下の手順でカーソルを動かしてみましょう。
1.jを何回か押し、13行目まで移動(SELINUXTYPE=targetedの行)
2.lを何回か押し、末尾のdまで移動
3.hを何回か押し、行頭のSまで移動
4.kを何回か押し、1行目まで移動(空行)
5.3j(下に3移動)
6.3l(右に3移動)
7.3h(左に3移動)
8.3k(上に3移動)
■ 行移動
行移動は、行数 + 「G」です。
以下の手順で移動してみましょう。
1.9G
2.12G
3.13G
4.8G
■ 行末、行頭に移動
行末、行頭への移動は「$」(行末)、「0」(行頭)です。
以下の手順で移動してみましょう。
1.$
2.0
3.4G
4.$
5.0
■ 画面を移動
画面の移動は「Ctrl」 + 「f」(次の画面)、「Ctrl」 + 「b」(前画面)
以下の手順で移動してみましょう。(hostsだと行数がすくなくてあまり移動できませんが。。。)
1.1G
2.「Ctrl」 + 「f」
3.「Ctrl」 + 「b」
■ 文末、文頭に移動
文末、文頭への移動は「G」(文末)、「gg」(文頭)です。
以下の手順で移動してみましょう。
1.3G
2.G
3.gg
■ 単語毎に移動
単語毎の移動は「w」(右に移動)、「b」(左に移動)です。
以下の手順で移動してみましょう。
1.11G(minimumの行)
2.wを押し、protectedまで移動
3.bを押し、行頭まで移動
■ 検索
検索は「/」(前方検索)、「?」(後方検索)です。
次の検索候への移動は、「n」又は「N」です。
以下の手順で検索してみましょう。
1.gg
2./disabled → enterを押す
3.n
4.N
5.?th → enterを押す
6.n
7.N
■ コピー
コピーは「yy」、貼り付けは「p」です。
以下の手順でコピーしてみましょう。
1.12G(mls ~の行)
2.yy
3.G
4.p
5.u
6.8G(SELINUX ~の行)
7.4yy
8.G
9.p
10.u
11./controls → enterを押す
12.yw
13.p
14.u
15./Modification → enterを押す
16.y$
17.G
18.p
19.u
20./Modification → enterを押す
21.y0
22.G
23.p
24.u
■ 切り取り
コピーは「dd」、貼り付けは「p」です。
以下の手順でコピーしてみましょう。
1.12G(mls ~の行)
2.dd
3.G
4.p
5.uu
6.8G(SELINUX ~の行)
7.4dd
8.G
9.p
10.uu
11./controls → enterを押す
12.dw
13.p
14.uu
15./Modification → enterを押す
16.d$
17.G
18.p
19.uu
20./Modification → enterを押す
21.d0
22.G
23.p
24.uu
■ 削除
削除は「x」です。
以下の手順で試してみましょう。
1.3G
2./take → enterを押す
3.xxxx
4.uuuu
5.4x
6.u
■ 直前の操作の取り消し、直前の操作の繰り返し
取り消しは「u」、繰り返しは「.」です。
以下の手順で試してみましょう。
1.7G
2.yy
3.G
4.p
5......
6.uuuuu
3.挿入モードの練習
■ 文字の挿入
文字の挿入は、
「i」(カーソル位置に挿入)
「a」(カーソルの右に挿入)
「o」(カーソルの下に挿入)
「O」(カーソルの上に挿入)アルファベット大文字
です。
また、「esc」を押すとノーマルモードに戻ります。
以下の手順で試してみましょう。
1.G
2.i(挿入モードになる)
3.name=taro
4.「esc」を押す(ノーマルモードに戻る)
5.a
6.u
7.「esc」を押す(ノーマルモードに戻る)
8.o
9.id=001
10.「esc」を押す(ノーマルモードに戻る)
11.O ※アルファベット大文字
12.tel=090xxxxxxxx
13.「esc」を押す(ノーマルモードに戻る)
4.ビジュアルモードの練習
■■■ビジュアルモード(範囲選択モード)※矩形はviではできません。
範囲選択は、
「v」(カーソルの位置から選択開始)
「V」(カーソルの行から選択開始)
「Ctrl」+ v(矩形選択開始)
です。選択後は、削除、コピー、切り取り、文字の挿入等ができます。
また、「esc」を押すとノーマルモードに戻ります。
以下の手順で試してみましょう。
1.2G
2./state → enterを押す
3.v
4.llll (アルファベット
5.x
6.「esc」を押す(ノーマルモードに戻る)
7.u
8.「V」
9.4j
10.x
10.「esc」を押す(ノーマルモードに戻る)
11.u
12.「Ctrl」 + 「v」
13.G
14.I
15.#
16.「esc」を押す(ノーマルモードに戻る)
16.u
5.コマンドモードの練習
コマンドモードでは、以下のことができます。
:q (vimの終了)
:q! (vimの強制終了)
:w (保存)
:wq (保存してvimを終了)
:set nu (行番号表示)
以下の手順で試してみましょう。(今回は保存せず終了します)
1.:q!
以上、お疲れさまでした。