初心者向け:viエディタの使い方

オラクルデータベースの基本

LinuxやUnix系のシステムでOracleデータベースを使用する際、テキストエディタとして「vi」や「vim(Vi IMproved)」を使用する機会が多いです。viは軽量かつ強力なテキストエディタですが、初めて使う方にとっては少し複雑に感じるかもしれません。この記事では、viエディタの基本的な使い方と、実際に listener.oratnsnames.ora ファイルを作成する手順について詳しく説明します。
viコマンドはオラクルを使用する上でもよく使用するコマンドだと思います。

1. viとは?

viはUnixベースのシステムに標準搭載されているテキストエディタで、主に「コマンドモード」と「挿入モード」の2つのモードを使って操作します。

  • コマンドモード:テキストの保存、カーソルの移動、削除などを行います。
  • 挿入モード:テキストを編集・追加します。

2. viの起動方法

viを起動するには、ターミナルで以下のコマンドを入力します。

vi ファイル名

たとえば、新しく tnsnames.ora を作成する場合は次のように入力します。

vi /path/to/tnsnames.ora

3. モードの切り替え

  • コマンドモードに入る:viを起動すると最初にコマンドモードになります。
  • 挿入モードに切り替えるiキーを押すと挿入モードになり、テキストを編集できます。
  • コマンドモードに戻るEscキーを押すと挿入モードからコマンドモードに戻ります。

4. 基本的なテキスト編集コマンド

テキストを編集中に使える基本的なコマンドを覚えておくと便利です。

4.1 挿入と編集

  • i:カーソルの前に挿入(挿入モードに入る)
  • I:行の先頭に挿入
  • a:カーソルの後ろに挿入
  • A:行の最後に追加

4.2 削除

  • x:カーソル位置の文字を削除
  • dd:カーソル行全体を削除
  • d$:カーソルから行末まで削除
  • D:カーソル行の全てを削除(同様に行末まで)

4.3 コピーとペースト

  • yy:カーソル行をコピー(ヤンク)
  • p:コピーした行をペースト
  • P:カーソルの前にペースト

4.4 取り消しとやり直し

  • u:直前の操作を取り消す(Undo)
  • Ctrl + r:取り消しの取り消し(Redo)

4.5 カーソルの移動

  • h:左に移動
  • j:下に移動
  • k:上に移動
  • l:右に移動
  • w:次の単語の先頭に移動
  • b:前の単語の先頭に移動
  • 0:行の先頭に移動
  • $:行の末尾に移動

5. listener.ora の作成例

listener.ora はOracleデータベースのリスナー設定ファイルです。以下の手順で作成します。

1.viでファイルを開く

vi $ORACLE_HOME/admin/listener.ora

2.挿入モードに切り替えるiキーを押して次の内容を入力します。

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)

3.保存して終了するEscキーを押してコマンドモードに戻り、:wq と入力して保存して終了します。

6. tnsnames.ora の作成例

tnsnames.ora はOracleクライアントがデータベースに接続する際に使用される接続情報を設定するファイルです。

1.viでファイルを開く

vi $ORACLE_HOME/admin/tnsnames.ora


2.挿入モードに切り替えるiキーを押して次の内容を入力します。

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)


3.保存して終了するEscキーを押してコマンドモードに戻り、:wq で保存して終了します。

7. まとめ

viエディタを効率的に使用するためには、モードの切り替えと基本的なコマンドを覚えることが重要です。特に、Oracleの listener.oratnsnames.ora のような設定ファイルを編集する際、viの基本操作を理解していればスムーズに作業が進みます。まずは基本コマンドから練習して、少しずつ使いこなしていきましょう。

コメント

タイトルとURLをコピーしました