シンガポール・サンノゼリージョン全プラン 30日間 25%OFF!
ドキュメントご利用ガイド第7回:エディタを使ってみる!

第7回:エディタを使ってみる!

第7回:エディタを使ってみる!





前回はコマンド入力のちょっと深い操作を学びました。周りに知らない人がいたら、少しは自慢できるぐらいになっているのではないでしょうか。今回は、ターミナルソフトから、直接ファイルを作成、編集する、vi(ぶいあい)エディタを学んでいきましょう。これを使いこなすことができれば、お!コイツできるな!と思われますよ。

まずは、ターミナルソフトでサーバにログインした状態から、viエディタで、「test.txt」を作成してみましょう。

viエディタを起動する時は、

vi “ファイル名”

と指定します。では、実際に、viエディタを起動してみます。

[localadm@test ~]$ vi test.txt
 ~
 ~
 ~
“test.txt” [New File]

このような画面がターミナルソフト全体に表示されましたね。 これが、viエディタの画面です。



viエディタには、2つのモードがあります。
  1.コマンドモード:ファイルの保存、コピー&ペースト、viエディタを終了などを行うモードです。
  2.挿入モード:ファイルに文字を挿入、変更、削除をするモードです。



コマンドモードから、挿入モードに切り替える方法は、幾つかありますが、まずはカーソルの左から入力開始する「i」を入力して、挿入モードにしてみましょう。

~
~
~
― INSERT ―

画面の下に、「INSERT」と表示されましたね。これが、挿入モードに切り替わった状態です。                     では、「hello world」と入力してみてください。

hello world
~
~
― INSERT ―

いま入力した文字をテキストファイルとして、保存してみましょう。                     挿入モードから、コマンドモードに切り替えをする「Escキー」を押します。

 

「INSERT」の文字が消えましたね。これがコマンドモードの状態です。 コマンドモードに戻ると、矢印キー(←、→)で、左右に移動することができます。



では、次に、「hello world」の間に、「my」を追加してみましょう。 コマンドモードの状態で、「world」の「w」の箇所まで、カーソルを移動します。 ここで、挿入モードの「i」を入力し、「my 」を入力します。

hello my world
~
~
― INSERT ―

追加できましたね。

もし、ここで間違った文字を入力してしまった場合、一度「Escキー」を入力して、コマンドモードに切り替えて、一文字削除する「x」を入力します。その後にもう一度、挿入モード「i」を入力して追加することができます。

では、保存をしてみましょう。「:w」を入力します。

hello world
~
~
“test.txt” [New] 1L, 12C written

これで、「test.txt」ファイルが新規に作成され、保存されました。



次に、viエディタを終了してみましょう。 いまのコマンドモードの状態で、終了する「:q」を入力します。 そうすると、viエディタが終了し、コマンドラインの画面に戻ります。

[localadm@test ~]$ vi test.txt
[localadm@test ~]$

ファイルが、作成されているか確認をしてみます。

[localadm@test ~]$ cat test.txt
hello my world
[localadm@test ~]$

入力したとおりにファイルが、作成されていますね。

これが一連のファイルの作成、入力、編集、保存の手順です。 いつもWindowsのメモ帳に慣れている人にとっては、とっつきにくいかもしれませんが、一度覚えてしまえば、全ての作業をキーボードだけでできてしまう、カッコいいエディタなんですよ!是非、覚えてみてください!




今回のviエディタ操作を復習してみましょう:
・viエディタには、以下の2つのモードがある
 1.コマンドモード:ファイルの保存、コピー&ペースト、viエディタを終了などをするモード
 2.挿入モード:ファイルに文字を挿入、変更、削除をするモード

・「vi “ファイル名”」
 viエディタでファイルを開く

・「i」
 挿入モードに変更する。カーソルの左から入力を開始する

・「Escキー」
 コマンドモードに切り替え

・「←」「→」
 コマンドモード上で左右カーソル移動

・「↑」「↓」
 コマンドモード上で上下にカーソル移動

・「:w」
 ファイルの保存

・「:q」
 viエディタの終了



これ以外にも、色んな編集方法がありますので、その一部をご紹介します。
これを全て使いこなせたら、もうアナタは、viマスターです!



1.起動編

・「vi +n “ファイル名”」
 n行目から表示する

・「vi + “ファイル名”」
 最後の行から表示する



2.挿入モード編

・「a」
 カーソルの右から入力開始

・「A」
 行末から入力開始

・「I」
 行頭から入力開始く

・「o」
 現在の行の下に1行挿入し、その行頭から入力開始

・「O」
 現在の行の上に1行挿入し、その行頭から入力開始



3.コマンドモード編

・「X」
 カーソルの左の文字を1文字削除

・「dd」
 現在の行を削除(バッファにコピーされます)

・「ndd」
 n行を指定して削除

・「:行1, 行2 d」
 行1 から行2 を削除

・「H」
 画面の最上行に移動

・「M」
 画面の中央行に移動

・「L」
 画面の最下行に移動

・「G」
 ファイルの最終行に移動

・「nG」
 ファイルのn行目に移動

・「0」
 行の頭へ移動

・「$」
 行の最後へ移動

・「Ctrl + F」
 1ページ下へ移動

・「Ctrl + B」
 1ページ上へ移動

・「Ctrl + D」
 半ページ下へ移動

・「Ctrl + U」
 半ページ上へ移動

・「:wq」
 ファイルを保存して、viエディタの終了

・「/”文字列”」
 ”文字列”を検索

・「?”文字列”」
 ”文字列”を検索(逆方向)

・「n」
 順方向へ検索

・「N」
 逆方向へ検索

・「r」
 カーソル上の1文字を他の1文字に置換

・「R」
 カーソル上の文字からEscが押されるまでの文字列を置換

・「s」
 カーソルのある1文字を他の文字列で置換

・「S」
 現在の行を他の文字列で置換

・「cw」
 カーソル位置からこの語の最後までを置換

・「cf “文字列”」
 カーソル位置から指定した”文字列”までを置換

・「C」
 カーソル位置から行の最後までを置換

・「:%s/置換え前/置換え後」
 置換え前の文字列を、置換え後の文字列で置換
 もっとも近くにある文字列一つに対してのみ実行

・「:%s/置換え前/置換え後/g」
 ファイルの中すべての文字列に対して、置換えを行う

・「yy」
 現在の行をバッファにコピー

・「nyy」
 n行分をバッファにコピー

・「yw」
 単語をバッファにコピー

・「p」
 バッファ内のテキストを挿入
 文字列と単語はカーソルの右に、行は現在の行の下に挿入される

・「P」
 バッファ内のテキストを挿入
 挿入位置はpの逆。文字列、単語はカーソルの左に、行は現在の行の上に挿入される

・「u」
 直前の操作を取りやめる

・「U」
 行全体の操作を取りやめる

・「.」
 直前の操作の繰り返し

・「:n」
 複数個のファイル編集時、次のファイルを編集対象とする

・「:e#」
 一つ前の編集ファイルに戻る

・「:set number」
 行番号を表示する

・「:set no number」
 行番号の表示をやめる




では、また次回!

今すぐお申し込み