Linuxサーバを使っていると避けては通れないviエディター。
できれば、LinuxにGUI環境をインストールして、アプリケーションのエディターを使いたいのが本音です。それなら、いちいちコマンドを覚えなくて済みますし、パソコンを使っている人間なら直観的に使いこなせるかと思います。
しかし、GUI環境にできない、しない時には、どうしもviエディターを使わざるを得ません。いつも、ネット検索してあっちこっちを見ていましたが、自分用にまとめておきたいと思います。
本当に初歩的だけ抜粋
ファイルを作成・開く
# vi filename
ファイルの新規作成になります。

既存のファイルを開くなら、
(例)ポート開放の設定ファイルを開く
# vi /etc/sysconfig/iptables-config

現在カーソルが、#の位置にますが、キーボードの↑↓←→の矢印キーで動くようです。
他に、
| h | カーソルを1文字左へ |
| j | カーソルを1行下へ |
| k | カーソルを1行上へ |
| l | カーソルを1文字右へ |
でもいいようですね。
矢印キーが使えるなら、矢印キーを使う方が楽ですね。
移動に1文字づつ移動では面倒な場合は下記のコマンド
| [Ctrl] + f | page down |
| [Ctrl] + d | page down 1/2 |
| [Ctrl] + b | page up |
| [Ctrl] + u | page up 1/2 |
文字の編集
文字の編集が最初、もっとも戸惑います。
文字を入れたくても入れられないし、上書きされてしまったり・・・
まず、下記のコマンドを覚えましょう。
| i | 挿入(insert)モード※カーソルの前 |
| a | カーソルの後から挿入(insert)モード開始 |
しかし、iとaの違いが私にはわかりませんでした。どっちもカーソルの場所から文字が割り込みで入力されていきました。
インサートの「i」だけ覚えておけば何とかなりますね。
1文字削除
xを叩けば1文字だけ消せます。
訳わからなくなったらESC
とにかく訳がわからなくなったら、せめて元の文に戻ってやり直せればいいですよね。そんな時は、
ESCボタンを押して、初期モードに戻します。
それから、
| :q | 終了 |
| :q! | 編集内容をファイルを保存せず終了 |
たぶん、終了だけでも保存がされずに終了になるかと思います。
編集終わったら保存・終了
| :w | 上書き保存 |
| :wq | ファイルを保存して終了 |
| :wq! | リードオンリーでも強制的に保存して終了 |
いろんなコマンドを覚えられないので、編集終わったら、
:wq
と覚えておけばいいんじゃないかと思いますね。
便利な機能
できれば、コピペや検索なども覚えておくと複数行にある場合には便利ですよね。
元に戻す
| . | 直前の変更を繰り返す |
| u | 進む |
| [Ctrl] + r | 元に戻す |
コピーアンドペースト
WindowsやGUIのエディターのようにはいかないので、簡単にコピペができない。方法としては、記事にするのが面倒なので、下記のサイトなどを参照していただければいいのかと思います。
●コピー
| 3y[space] | 3文字をコピー |
| yy | 行をコピー |
| 3yy | 3行をコピー |
●ペースト
| p | カーソルの後にペースト |
| P | カーソルの前にペースト |
●削除
| 3d[space] | 3文字を削除 |
| dd | 行を削除 |
| 3dd | 3行を削除 |
●検索
| インクリメンタル検索 | /単語 (Enterで終了) |
| 検索を繰り返す | n |
| 検索を繰り返す(逆方向) | N(大文字) |