linux note
     linuxのコマンドがカテゴリ別の一覧で確認できます。



 

Linux Note(トップページ) > エディタ > vi > vi の基礎







[Note] vi の基礎

linux のテキストエディタの代表格といえば「vi」ということになるでしょう。「vi」はWindowsユーザーにとっては、基本の感覚がわからないと思います。何故、このような面倒な方法でテキストを編集するのかと思ってしまいがちです。
linuxというOSは基本的にサーバー用途としての運用が暗黙裡に想定されています。サーバーの場合は、障害が発生した際の復旧が重要になってきますが、そうしたときにGUIインターフェースのエキストエディタでは役に立たないケースもしばしばです。これはGUIが起動や表示にメモリ等を比較的大きく使ってしまい、応答速度も遅くなる為です。CUIベースの「vi」であれば、障害でシステムリソースが不足している状況でも最低限のテキスト操作が瞬時に可能です。逆にいいますと、「vi」などが使えないくらいの状況というのは、かなり厳しい状況です。
そこで、linuxユーザーにとっては「vi」をマスターするというのが、半ば必須事項のようになっています。大は小を兼ねるではありませんが、「vi」を覚えておけば、障害時にも対応可能ですし通常もそれが使えるわけです。GUIのエディタを覚えた場合、通常はそれでよいのですが、障害時の為だけに「vi」などのCUIのエディタを覚えるわけですから、linuxエンジニアに中には「vi」1本でやっていらっしゃる方が結構多いのもわかられるでしょう。

さて、それでは「vi」の基本だけ、説明をしておくことにいたします。「vi」はコマンド等が豊富にありますので、全て覚えようとするとわからなくなります。ここでは基本だけを抑えることにします。

「vi」を利用するときは、以下のように「vi  ファイル名」として用います。

 $ vi test.txt

ここで、「test.txt」というファイルが存在していれば、そのテキストファイルを開いた内容が表示されますが、ファイルが存在しなければ、画面の一番したに「test.txt [New File]」などと表示され、編集の後、保存をすれば当該ファイルが作成されます。

今、「test.txt」というファイルが存在し、2行のテキストデータが存在したとすると、以下のように表示されるかと思います。

this is test.
this is a test file.
~
~
~
~
・・・・
“test.txt” 2L, 36C

上記では、テキストファイルの内容が画面に表示され、一番最後の行にファイル名と2行で36文字からなるデータであるという表示がなされています。

「vi」には2つのモードがあり、起動した時点では、「コマンドモード」になっています。「コマンドモード」では、「vi」は様々なコマンドを受け付けますが、まず最初に覚えていたきたいのが「i」です。

上記のように、何かテキストファイル(新規のファイルでも可)を開いた状態で、「i」のキーを叩きますと、「入力モード」に切り替わります。入力モードに切り替わりますと、表示されているテキストファイルの内容の部分を矢印キーで上下左右に動くことが可能で、文字を入力したり、Deleteキーなどで削除したりすることが可能です。(ただし、下方向に移動するには、あらかじめ改行により行が存在していることが前提です。下に移動できない場合は、現在の行末で「Enter」キーをたたきます。)

文章を作成したり、編集したりした後に保存をしたい場合は、「入力モード」から「コマンドモード」へ戻らなければなりません。この場合、「Esc」キーを叩くことで「コマンドモード」へ戻ることができます。

そして、保存をするコマンドは、「:wq」です。この「:」(コロン)を入力した時点で画面に表示されている最後の行が、以下のようになります。

this is test.
this is a test file.
addtional line.
~
~
~
・・・・
:

そして、「:wq」の残りの「wq」を入力すると

this is test.
this is a test file.
addtional line.
~
~
~
・・・・
:wq

となります。ここで「Enter」キーを叩くと編集していた内容が当該ファイルの保存され、「vi」も終了します。

また、取り急ぎ、「上書き保存」だけしておいて、「vi」での編集は継続したい時には、「:wq」ではなく「:w」で「Enter」キーを叩けば、以下のように最後の行にその旨、表示され「vi」は終了しませんので、また、「i」を叩いて編集を続行することも可能です。

this is test.
this is a test file.
addtional line.
~
~
~
・・・・
“test.txt” 3L, 53C written

「wq」は「 write & quite 」の略ではないかと思われます。「quite」をはずしてしまえば「上書き保存」のみになるということです。

では、最後の「vi」の操作法の基本をまとめておきます。

①「vi ファイル名」にて起動
②「i」により「入力モード」へ移行
③ 内容を編集する
④「Esc」により「コマンドモード」へ戻る⑤「:wq」で「上書き保存」+「viの終了」
 (もしくは、「:w」で「上書き保存」+再度の「i」で、再び編集作業に戻る)

以上が「vi」の基本です。 




[ カテゴリ一覧 ]

 |  エディタ  |  システム管理  |  テキスト操作  |  ファイルシステム  |  ファイル操作  | 
 |  ファイル管理  |  ユーザーやグループの管理  |