ここでは、viの超基本操作法を説明します。ちなみに、Windowsで使うviエディタのクローンはvimが良いです。こちらから貰ってきましょう。ちなみに、vimには練習モードがあります。:Tutorialで出来ますので、ここは無視してそれで練習するのも良いと思います。私の使っていたLemmyというのは、現在フリーじゃなくなりましたのでお勧めしません。
まずviとは何かと言うと、UNIXのシステムに標準で組み込まれているエディタだそうです。使い方を覚えれば、かなり使えます。
では、viを使うメリットはなんでしょうか?
- シェル(?DOS)と連動してる。
- 編集コマンドがたくさんあって、慣れると超便利。
- UNIX系ならどんなマシンでも使える。
こんなところでしょうか。シェルと連動しているので、プログラミングをする時、プログラムの作成・編集およびコンパイル、そして実行まで全ての行程をシェルから行えます。viにはテキスト入力モードとコマンドモードがあり、コマンドモードでは、何行目に飛ぶとか、単語の検索とか簡単に出来ます。また、UNIXシステムに標準で組み込まれているため、遠隔操作する際に何かと役に立ちます。
しかし、慣れないとちと取っ付き難いため、あまり一般受けしません。でも、慣れると他のテキストエディタはうっとうしくて使えないって思うほど便利です。覚えて損はないと思います。
では、まずviの起動方法ですが、viのアイコンをダブルクリック..でも起動しますが(笑)、シェルからの起動方法を説明します。簡単です。
"vi"+ "(space)"
+"filename"
です。filenameには新規作成するファイルや編集したいファイルの名前を入れます。例えば、"%vi kura.f"と言った感じです。
次に、入力モードとコマンドモードについて説明します。まず、viを起動するとコマンドモードの状態です。このままだと、何も書き込めません。そこで、文字を入力するときは、入力したい場所に合わせて次のコマンドを打ちます。
カーソル上の文字の前に文字を入れたい : i
カーソル上の文字の後に文字を入れたい : a
カーソル上の上の行に行(文字)を入れたい : O(大文字)
カーソル上の下の行に行(文字)を入れたい : o(小文字)
これで文字入力が出来ます。では、入力モードからコマンドモードに戻す場合はどうすれば良いかというと、"ESC"キーを押すだけです。コマンドを入力する場合は必ずESCを押してコマンドモードにしてください。
次に、文字や行の削除です。コマンドモードで
カーソル上の文字を消したい : x
カーソルのある行を削除したい : dd
カーソルのある行以下n行削除したい : ndd(nは数字。)
カーソル上の文字より右側を削除(切り取り) : D(大文字)
(Dで切り取った部分はpでペースト出来ます。)
続いて、移動と検索です。これは簡単です。
n行目に移動したい : ":"+
"n"(nは数字です。) + (Enter/Return)
一番上に移動したい : ":"+ "0"(1でも良いけど..)
+ (Enter/Return)
一番下に移動したい : ":" + "$"
+ (Enter/Return)
ある文字を探したい : ":" + "/"
+ "(探したい文字)" + (Enter/Return)
最後に、保存と終了です。
上書き保存 : ":" +
"w" + (Enter/Return)
保存して終了 : ":" + "wq"
+ (Enter/Return)
保存しないで終了 : ":" + "q!"
+ (Enter/Return)
何もしてないのでただ終了 : ":" + "q"
+ (Enter/Return)
writeとquitですね。分かりやすい..
この他にも、ここからここまでのある文字を別の文字に置き換えるとか、便利な機能が色々ありますが、興味のある人は自分で調べてみてくださいね。
おまけですが、
やりなおし(undo)は、"u"で、
シェルを呼び出すのは、":" + "sh"
+ (Enter/Return)
です。
では、ここでひとつ練習してみましょう。
みなさんはメールアドレスをいくつ持っているでしょうか?私はたくさん持っています。個人的に加入しているプロバイダのアドレス。ホットメールのアドレス。大学でもらったアドレス。研究室で運営しているサーバのアドレス。携帯電話のアドレス。Yahooとかgooなどのフリーのアドレスなんかも数えるとかなりたくさんのアドレスを持っています。使う場所が違うとか、メールアドレス変更の連絡が面倒くさいとかで、それぞれ使われています。しかし、主に使うのは、家のメールと大学のメール、携帯のメールでしょうか。そういう人は結構いると思います。しかし、それぞれをチェックするのは面倒くさい。メーラー立ち上げっぱなしってのも鬱陶しい。そこで、転送サービスというのがあります。一般のプロバイダーなどではオンラインで、その設定が出来たりしますが、大学などでは、そこまで親切なサービスはあまりやっていません。では、大学などのアドレスは転送出来ないのでしょうか?実は出来るんです。必ずとは言いませんが、理論上は必ず出来ます。前置きが長くなり(過ぎ)ましたが、北大工学部の大学院生に与えられるPOPサーバを例に説明します。
まず、シェルからtelnetを起動します(telnetと打つだけです)。Win95/98/MeなどではTelnetのターミナルが起動しますので、ホストを設定し、接続してください。

そうすると、IDとパスワードを要求されますので、入力してください。 
NT/2000などでは、そのままシェルがtelnetになりますから、openコマンドで接続してください。 
同様に、IDとパスワードを要求されますので、入力してください。 
ここで、lsコマンドで内容を確認するとMailというものがあります。(ここには入れませんし、編集も出来ません。)では、何がviの練習だということになりますが、ここで、隠しファイルと言いますか、なんと言いますか、とにかく転送設定ファイルを作る(編集する)ことにします。ファイルの名前は".forward"(ドットを忘れないように)です。telnet上でこのファイルをviを使って編集します。
"vi" + "(space)"
+ ".forward" + (Enter/Return)
と入力してください。そうすると、初期状態では空のファイルが開きます。そこで、転送したいアドレスを入力していく訳ですが、どのように転送したいかで内容がちょっと変わってきます。
1.サーバにメールを残しつつ、転送する場合。
1行目 "\" + "(ID)"IDは自分のIDを入れてください。
2行目以下 転送したいアドレスを1行にひとつずつ。
例えば私なら
01 \hk113
02 galois@xxxx.ne.jp
03 galois@....ne.jp
04 ・
05 ・
といった感じです。編集し終わったら、上書き保存して終了(:wq)してください。
2.サーバにメールを残さない場合。
残す場合の1行目が要りませんが、ひとつ目のアドレスの前に
".(ドット)" + ",(カンマ)"
が必要らしいです。理由は知りません。なくても良いのかもしれません。2つ目の転送先の前に要るかもよく分かりません。色々やってみてください。なんで私がやらないかと言うと、メールが色々転送設定されていて、ひとつ変えて実験すると携帯にものすごい数のメールが転送されてくるからです。という訳で、誰かやったら教えてください。
以上で設定終わりです。気をつけることは、メール転送がループしないようにすることですね。セキュリティーの甘いサーバだとメールが無限増殖します。ま、そこらへんはフローチャートでも書いて(笑)、考えてみてください。
最後にtelnetの終わり方ですが、"exit"と入力すれば、サーバとの接続が切れます。Win95/98/Meなどでは、そのまま終了して構いません。NT/2000などは、"quit"と打つとtelnetを終了します。
それでは、頑張って快適メール環境を作ってください。じゃなくて、viの使い方になれてください。ではでは。 |