~ vi(vim) エディタ操作 ~
unix系エディタの基本
ほとんどのunix系のOS上にはviが用意されています。
現在はx-windowがインストールされるのが普通にはなっている
と思いますが、telnet、sshなどのターミナル上でも気軽に動かせる
viはエディタの基本といえます。
そこで、viのコマンドをまとめてみます。
Vi 起動ファイル
-
~/.exrc ファイル
このファイルが存在する場合初期化ファイルとして読み込みます。
vi 起動後、[:set number]実行後、[:mk]を実行するとそのカレント ディレクトリに[.exrc]ファイルが作成されます。
次回からの vi 起動後は行番号付きで表示されます。
オプション | 機能 |
set number | 行番号を付ける |
set tabstop=4 | タブ幅を4文字にする |
set showmode | 文字列挿入モードの表示を行なうか |
set autoindent | オートアイデントを行う |
set columns=70 | 表示桁数を70文字にする |
viの操作モード
-
viの操作モードには3つのモード、「コマンドモード」、「挿入モード」
「exモード」があります。
- コマンドモード
カーソルの移動、文字、行の削除などを操作するモードで デフォルトの起動時のモードになります。
- 挿入モード
通常のスクリーンエディタと同じような動きをします。
上下左右のカーソルキーにより文字間の移動も可能です。
- exモード
あまり気にしなくて良いモードと言えます。
[:]に続けてコマンドを入力して実行します。
コマンド一覧
コマンド | 機能 |
num[x] | カーソル位置以降のnum文字を削除 |
num[X] | カーソル位置以前のnum文字を削除 |
num[d][d] | カーソル位置より後方num行を削除 |
[D] | カーソル位置より行末までを削除 |
[y] | カーソル行をコピー |
num[y][y] | カーソル行からnum行をコピー |
[j] | 行の連結 |
[p] | カーソルの後ろにバッファのデータを貼り付ける |
[P] | カーソルの前にバッファのデータを貼り付ける |
[u] | 直前の操作の取り消し |
[U] | カーソル位置の行操作の取り消し |
カーソルの移動
-
コマンドモード時[h][j][k][l] キーでそれぞれ、[h]=左・
[j]=下・[k]=上・[l]=右、に対応します。
カーソルキーでもほとんど対応します。
もし、カーソルキーが対応していない場合はコマンドモード時 [h][j][k][l]にてカーソル移動させます。
また、指定の文字数移動の場合はそれぞれのコマンドの前に 数値を入力して、指定文字(行)数移動することも可能です。
例:[40L]と入力した婆は右に40文字移動します。
ワード単位の移動
-
[w]で行末へのワード移動、[b]で行頭へのワード移動です。
[h][j][k][l]と同様に先頭に数値を付けて移動することも出来ます。
ページ移動
-
[ctrl]+[f] で次ページへ、[ctrl]+[b] で前ページへ、移動します。
数値を付けることも出来ます。
文字列の挿入
-
[i],[a]で挿入モードになります。
挿入モードで[esc]を押すと、コマンドモードに戻ります。
挿入モード時、カーソルキーでカーソルの移動を行い、[delete], [back space]で文字の消去を行います。
[enter]で改行を行います。
[i]コマンドはそのカーソルの前位置からの入力となり、 [a]コマンドはそのカーソルの後位置からの入力となります。
[A]コマンドは行末からの入力となりますので、行末からの入力時には 便利です。
[o]コマンドは新規行を作成しての入力となります。
文字、文字列の削除
-
コマンドモード時の文字の削除は[x],[X]で行います。
[x]はカーソルの後文字削除、[X}はカーソルの前文字削除となります。
また、行の削除は[d][d]です。
それぞれ、数値を付けることも出来ます。
コピー、貼り付け
-
[x],[X],[d][d]などの削除コマンドや、[y]のコピー
(ヤンク)コマンドでデータはバッファに保管されます。
このバッファにあるデータは[P]コマンドによってカーソルの前、 [p]コマンドによってカーソルの後ろに貼り付けることができます。
アンドゥ
-
[u]はviでは直前の操作を取り消すのみですが、
vimではアンドゥをデフォルトで1000回行う機能を持っています。
保存と終了
-
ファイルの読み込み、保存、終了を行うばあい「exモード」で行います。
基本的にはコマンドモードで[:]の後ろに各コマンドを設定して実行します。
たとえば、上書きして、保存、終了は「[:][w][q]」です。
また、強制終了の場合は「[:][q][!]」です。
コマンド | 機能 |
:# | カーソル位置の行番号表示 |
:number | number 行へカーソルを移動する |
:$ | 最終行へカーソルを移動 |
:w filename | 指定ファイル名で書き出す |
:wq | ファイルを上書きして終了 |
:q! | そのまま強制終了 |
:r filename | カーソル位置以降へ読み込む |
:! command | シェルコマンド実行 |
:r! command | シェルコマンド実行してカーソルの後に挿入 |
:help | ヘルプ表示 |
くるくる 遊々
<目次へ>
Linux逆引き大全500の極意 コマンド編/
伊藤 幸夫 (著)
プログラミングテクニック―UNIXコマンドのソースコードにみる実践プログラミング手法/
多治見 寿和 (著)
Books from Amazon
[an error occurred while processing this directive]
Books from Amazon
[an error occurred while processing this directive]