Captain's Selection

EDLIN.EXE('00 Oct.)

 えどりん,といっても,別に,江戸さん(って誰だ)の愛称,というわけではありません。

 DOSのお話がかなりを占めます。昔DOSを使っていた方には懐かしく,DOSって何? というWindowsユーザには新鮮に聞こえることでしょう。根っからのMacやUNIXの方は,えぇと,そうだな,今からDOS始めません?

 むかしむかし,今を離れること,うぅん,もう10年近くになるところがショックですな。MS-DOS(というのは98(*1)だ,当然)の時代,EDLIN.EXEというラインエディタ(*2)がありました。3.3xの頃には,SEDIT.EXEが標準でついていましたし,それ以前でも,普通の人はMIFES(*3)とかVZ(*4)を使っていて,EDLINなど使っている人はついぞ見かけたことはありませんでした。

 このエディタは,完全にコマンドラインで動く代物で,一字一句直すだけでも,場合によってはその行すべて打ち直さないといけないという,そのすばらしい操作性に,私も一回使って(それでも使ったのか)やめてしまいました。

 で,時代は飛んで,ついこの間。職場のNT4でファイル検索をしているときのことです。かなり寛い条件で検索してしまい,案の定,ヒットがものすごい数になってしまって,もう一度検索のし直しか,と思いつつ結果を見ていたら,ありました,EDLIN.EXEが。もしや,と,家へ帰っておそるおそるWindows2000を開けてみると,...やっぱりありました。いくら,過去の資産の継承,といっても,Windows2000のユーザの99.99%(もっとか?)はEDLINなんか使いませんよねぇ。昨日コンピュータに初めてさわったという初心者だって,二者択一ならばEDLINよりはvi(*5)を選ぶんじゃないでしょうか。

 でも,せっかくこんなに不便なものがあるのだから,一度は使って,あぁ,やっぱり不便だ,と感じることも大切でしょう。それに,何かの時に役に立たないとも限らないし(実際,Win95のDOSモードで,SEDIT[Enter](*6)で「コマンドまたはファイル名が違います(*7)」とやられたときには,EDLINを使おうかと思った)。ということで,緊急特集『21世紀を生き抜くためのEDLIN操作講座』。

 用意するものは,WindowsNTまたはWindows2000がインストールされているコンピュータ。Win9xにはEDLINがついていません。Windows Me(*8)は,使っていないのでわからないけれど,たぶんないでしょう。復活していたら,それはそれですごい。(2004/2付記:XPにも入っています。)

 まず,編集対象のファイルが必要です。存在しないファイル名をEDLINに教えてあげればいいわけですが,ここは,せっかくですから,別の時代錯誤的方法で。

 徹底的にCUI的に,[Ctrl]+[Esc](またはWindowsキー)→[R](ファイル名を指定して実行)→「cmd」[Enter]で,コマンドプロンプトを出します。ファイルを作っても構わないようなディレクトリに移動して,以下のように打ってください(NC4で見ると恰好悪いかもしれません。その場合はスタイルシートを無効にしていただくとよいでしょう)。記述していませんが,行末には[Enter]を押します。それから,最後の「^Z」は,[Ctrl]+[Z]です(*9)

C:\>copy con temp.txt
This is new File.
Chapter 1
End of file
^Z

これで,ファイルが作成されました(*10)。早速EDLINを起動してみましょう。

C:\>edlin temp.txt
ファイルを終わりまで読み込みました.
*

*というのはEDLINのプロンプトです。試しに,?[Enter]と打ってみましょう。EDLINのコマンド一覧がでてきたはずです。

L[Enter]と打つと,ファイルの中身が以下のように表示されることでしょう。

*l
       1:*This is new File.
       2: Chapter 1
       3: End of file
*

 さて,これからが茶番です,いや本番です。とりあえず目標を

  1. 1行目のFileをfileにする。
  2. 2行目と3行目の間に「Chapter 2」の行を入れる。
  3. 「This is new file.」を「This is a new file.」とする。

という3点とします。

 まず,第一の課題。1行目を編集するので,1[Enter]と入力すると,以下のように表示されます。

*1
       1:*This is new File.
       1:*
上の行は,現在の内容,そして,下の行に,変更後の内容を入力するのです。え,全部打ち直し? と言う勿かれ。文明の歴史は手抜きの歴史,ちゃんと方法はあるのです。[F2]キーと,続けて修正対象の「F」を入力してください(*11)。そうすると,下の行に「This is new 」と入りましたので,小文字の「f」を打ってやります。あとは上と同じでいいよ,という場合には[F3]を押します。これで[Enter]を打てば,この行の編集は終わり。「L」コマンドでファイルの中身を確認してみてください。

 さて,第2の課題ですが,これは

  1. 2行目と同じ行を3行目の前にコピーする
  2. その内容「Chapter 1」を「Chapter 2」に修正する

という2つの作業と考えましょう。先程,?でコマンド一覧を見たときに,コピーというのがありました。書き方は,「[先頭行],[終了行],目的行[,回数]C」で,[ ]内は場合によっては省略可能となっています。ここでは,「2行目から2行目までを3行目の前に(1回)Copyする」ということで,回数はたぶん省略できるだろう,という見込の下,「2,2,3C」と打ってみてください。こうなるはずです。

*2,2,3C
*

何も出ません。正確には*プロンプトが出てきたので,入力ミスではないとわかるのですが,何となく不安です。「L」を打ってみると,

*l
       1: This is new File.
       2: Chapter 1
       3:*Chapter 1
       4: End of file
*

大丈夫のようです。あとは
3[Enter]
[F2]12[Enter]
で修正をすれば,第二の課題は終了です。

 さて,最後の課題。「こんなの簡単だ。第一の課題をそのまま使えばいいんだろ」 それではお手並み拝見といたしましょう。
1[Enter]
[F2]na [F3]
あれ?

*1
       1:*This is new File.
       1:*This is a w File.

予想外の表示となってしまいました。註11にも書いておきましたが,[F3]は,カーソルの位置と同じ文字数目(変な言葉だ)以降を入力してくれます。通常のエディタ風に言い換えれば,常に上書きモード,ということです。どうすればいいのか,というと,先程のヘルプにある置換を使えば大丈夫(実は最近まで知らなかった)。目的行(あるいは[開始行],[終了行])のあとにRをつけ,検索文字列を入力し,[Ctrl]+[Z]を挟んで置換文字列を入力します。

*1Rnew^Za new
       1: This is a new File.

 で,これでひとまず作業は終了です。*プロンプトから「E」と打って,保存終了してください。

 大変お疲れさまでした。予告どおり不便だったでしょ。どのくらい時間かかりました? 普通のエディタなら,慣れた人だと10秒かからずに出来そうな作業ですよね。

 「こんなの使って,何の役に立つんだ?」,何の役にも立ちません。「無用の用(*12)」なんて言うけれど,これは全く無用の無用。でも,本当に何の役にも立たないもの,なんてそうあるものではありません。そういう意味では,あなたは,本当に貴重な経験をした,といえるでしょう。超芸術トマソンといったところかもしれません。NT通を自称している人に「edlin.exeって使ったことある?」と自慢することくらいは出来るのが唯一の使い道。

 そのくらいの効用しかない,とは思っていますが,もし,これでラインエディタにはまっちゃった人が出てきたらどうしよう,という一抹の不安が無きにしもあらずなのですが。ファンクラブを作る際には,是非お声を。

※ Vista RC1にもありました。でも,起動すると,表示が英語モードに移行してしまう。日本語が含まれるファイルを読んでも正しく表示されない。もとより入力もできない。正式バージョンリリースまでにはちゃんと修正しておいてもらわないと困..らないか,ちっとも。

トップへ戻る
Captain's Selection目次に戻る

お問い合わせは
真鍋汽船こうほう部