konnoさん
うーむ、どう回答したものやら?
おそらく一番大事なのは、
>が、DOSVAXJ3 では何故か動かなかったです。
でしょうか。
これは、DOSVAXJ3の作者様に報告していただくしかないでしょう。
僕は、VTDOS以外、DOSエミュレータを知らないんです。
VTDOSをよく知っているわけでは、まったくありませんが。
で、元にもどっていちおう整理を試みると、なぜwild.exeが登場したかと
いうと、yagrepで「ディレクトリ再帰」が変、とkonnoさんが仰っていたから
です。
以下の表をみてください。16bit の grep で「ディレクトリ再帰」が
オプションで可能なのは、wgrep, ygrep, jgslimだけだそうです。
cgrep Ggrep akgrep wgrep ygrep izgrep dgrep jgslim zf
directory下再帰 -u -r -a
で、grep, sed, awk にも、ふつうその機能はないけれど(多くのフィルタ系
ツールも)、wild.exeをかませると、それが可能ですよ、と実用的なことを
話に僕がまぎれこませた、ということです。
wild.exeは、ワイルドカード展開を助けてくれる、いわばメタツールで、
ですから
Wild -D -R "head -7 $f >c:\wk\$x" c:\bin\asm_stdy\*.doc
の"head -7 $f >c:\wk\$x"の部分は、展開されるべきワイルドカードを
含んだコマンドなのです。
コマンドの中身が、"head -7"(ファイルの冒頭7行を表示。8行目以降は
見せるな)で、$f がワイルドカード的に展開されるべき対象ファイル名です。
(typeだと、冒頭7行だけ、というわけにはいかないでしょう?)
$f, $x を Siさんは「マクロ」とドックで呼んでいたと思いますが、
wildの使い方は、wild.doc を読んでもらって試してもらうのがはやいです
(必要ないでしょうけれど。必要がなければ、けっこう難解です)。
「ディレクトリ再帰」がないツールにその機能を付加する。これがwild.exe
のお仕事であり、ここで登場してもらった理由です。
さらに元にもどって。
DOSVAXJ3 のテスト。これがkonnoさんの主目的ですよね?
だとしたら、まず、VTDOSと結果を比較するのがよいのではないでしょうか?
意図的なのかもしれないけど、僭越ながら申し上げると、割と迷走モード
っぽいような印象を受けました。
パイプにせよ、ワイルドカードの展開にせよ。
もっとも、ワイルドカードの展開は、外部ツールでは、そいつがすることに
なっていたと思うけど。
dir みたいな内部コマンドだと、さて誰が展開するのでしょう? ですが。
command.com? あるいは、DOSエミュレータ本体?
上のくだりでは、僕自身が迷走してますが、ま、今の僕の課題ではないので、
ご容赦ください。
大量に本を捨てている毎日ですが(仕事おさめ)、DOS関係本はとって
あります! fortranとpascal関係本は、うう、どうしよう? ですが。
とっとく!
追伸:「引用なし」ボタン。最高です。僕はこれを愛してます。