vi エディタのコマンドをまとめておきます。
以下の Linux 環境を想定しています。
環境1: Raspberry Pi(bullseye、buster、他)
環境2: VPS (ConoHa VPS)
背景
Raspberry Pi を使うとき、また、VPS などのサーバーを借りたとき、Linux のコンソール画面を使うことになります。このコンソール画面上でファイルを作成、編集しようとすると、vi エディタが必要となる場面が出てきます。
そこで、vi エディタで必要なコマンドをまとめておくことにします。
vi コマンドについてネット検索をすると、詳細な説明がヒットします。しかし、詳細まで覚えるのは難しいと思います。
そこで、最低限知っておく必要があるコマンドと、覚えておくと便利なコマンドとにわけ、まとめておくことにします。
最小限必要なコマンド
ファイルを開いて参照し、その後、保存せずに終了する場合
① ファイルを開いて内容を参照し、書き込みをせずに終了する場合、つぎのキー操作となります。
(vi 起動 → 上下左右移動 → 書き込みせず終了)
# vi text1.txt h, j, k, l でカーソル移動 :q! |
text1.txt を開く → コマンドモードになる 上下左右にカーソルを移動 h:左 j:下 k:上 l:右 強制終了 quit |
※ vi エディタには、コマンドモードと編集モードがあります。vi エディタを起動すると、コマンドモードになります。カーソルを移動させることで各部分を参照できます。
※ コマンドモードの状態で、[:] → [q] → [!] キーを順に押すと、:q! (vi コマンドで強制終了の意味。書き込みをせずに終了する、の意味)の文字列が画面最下段に表示され、[enter] キーを押すことで、vi エディタが終了します。
※ 強制終了時にもし、編集モードに入っていたら、[esc] キーを押すと vi の編集モードを抜けることができます。
ファイルを開いて編集・保存後、viエディタを終了する場合
② ファイルを編集する場合は、以下となります。
(コマンドモード→編集モード→コマンドモード→書き込んで終了)
# vi text1.txt h, j, k, l で編集する場所に移動 i (文字入力する) [esc] :wq |
text1.txt を開く → コマンドモードになる 上下左右に移動 コマンドモード → 編集モードに入る i: カーソル前で編集モードに入る a: カーソル後で編集モードに入る o: カーソルの次の行で編集モードに入る O: カーソルの前の行で編集モードに入る [esc] で、編集モードからコマンドモードに戻る 書き込んで終了 ( write & quit ) |
削除する場合(1文字削除、行削除)
# vi text1.txt h, j, k, l で1文字削除したいところに移動 x j, k で行削除したい行に移動 dd :q! または :wq |
text1.txt を開く → コマンドモードになる 上下左右に移動(編集モードに入った場合は [esc]) 1文字削除する 上下に移動する 1行削除する 編集せずに保存する場合は :q! 書き込んで終了する場合は :wq |
覚えておくと便利なコマンド
行のコピー&ペーストをする場合
j, k でコピーする行に移動 yy j, k でペーストする行に移動 p |
コピーする行に移動する yy で行コピー ペーストする行に移動する p でペースト |
文字列を検索する場合
:/ (文字列) n、N |
(文字列)を検索する 下(そのつぎ)、上を検索する |
ジャンプする場合
gg、G 0、$ |
ファイルの冒頭、ファイルの末尾に移動する 行の冒頭、行の末尾に移動する |
その他の操作例
行番号表示、指定行に移動、指定行に別のテキストファイルを差し込む例
# vi text2.txt :set number 、または、:set nonumber :10 [enter] :5 -r text1.txt |
text2.txt を開く 行番号を表示する、または、表示しない 10 行目に移動する 5 行目に text1.txt の内容を挿入する |
※ 上で :5 -r text1.txt は、事前にファイル text1.txt を同じディレクトリに作成しておく必要があります。
まとめ
vi コマンドについてまとめました。
vi エディタのよいところは、マウス不要で軽快に動く、といったところだと思います。
最初、①、②だけを覚えて、慣れてきたらそれ以降を覚えていくという感じになると思います。
VPS などのサーバーをレンタルして WordPress の設定を自力で行うとき、vi エディタが必要になると思います。最後のファイルの差し込みは、WordPress のパスワードを設定する際に使いました。
後半のコマンドはすぐに忘れてしまい、都度、ネット検索するのも煩雑でした。そこで、よく使うコマンドを1か所にまとめ、公開しておくことにします。
関連リンク
・ ファイル操作でよく使うコマンド 【Linux】