[HOME]  [全部表示 会議室風]  [全部表示 保存用]  [HOME]  [リストへもどる] [リストへもどる]

一括表示


  DOSVAXJ3 (2024/10/11)版 - konno 24/10/11-20:11 No.11538
 ┣ DOSVAXJ3 Win32プログラム対応テスト版 - konno 24/10/19-17:25 No.11559
 ┣ DOSVAXJ3 (2024/11/06)テスト版 - konno 24/11/07-01:29 No.11630
 ┣ DOSVAXJ3 (2024/11/07)テスト版 - konno 24/11/07-22:11 No.11631
 ┣ DOSVAXJ3 (2024/11/15)テスト版 - konno 24/11/16-00:45 No.11645
 ┃ ┗ Re: DOSVAXJ3 (2024/11/15)テスト版 - 文太 24/11/16-15:51 No.11646
 ┃ ┗ Re^2: DOSVAXJ3 (2024/11/15)テスト版 - konno 24/11/16-22:48 No.11647
 ┃  ┣ Re^3: DOSVAXJ3 (2024/11/15)テスト版 - 文太 24/11/17-15:54 No.11648
 ┃  ┃ ┗ Re^4: DOSVAXJ3 (2024/11/15)テスト版 - konno 24/11/18-00:47 No.11654
 ┃  ┃ ┗ パイプと同等の処理を BATで - konno 24/11/19-20:28 No.11657
 ┃  ┣ Re^3: DOSVAXJ3 (2024/11/15)テスト版 - 文太 24/11/17-16:02 No.11649
 ┃  ┃ ┗ Re^4: DOSVAXJ3 (2024/11/15)テスト版 - としき 24/11/17-17:38 No.11651
 ┃  ┃ ┗ mawk32.exe - 文太 24/11/17-20:15 No.11652
 ┃  ┃  ┗ .tar.gz 展開(by LHMelting) - 文太 24/11/17-23:00 No.11653
 ┃  ┗ Re^3: DOSVAXJ3 (2024/11/15)テスト版 - 文太 24/11/17-16:18 No.11650
 ┃   ┗ Re^4: DOSVAXJ3 (2024/11/15)テスト版 - konno 24/11/19-20:07 No.11656
 ┃    ┗ wild.exe と ディレクトリ再帰 - 文太 24/11/19-21:28 No.11658
 ┃     ┗ Re: wild.exe と ディレクトリ再帰 - konno 24/11/20-14:25 No.11659
 ┃      ┗ Re^2: wild.exe と ディレクトリ再帰 - 文太 24/11/20-21:37 No.11660
 ┃       ┗ Re^3: wild.exe と ディレクトリ再帰 - konno 24/11/21-16:15 No.11661
 ┃        ┗ ren grep fgrep - 文太 24/11/21-19:01 No.11662
 ┃         ┗ Re: ren grep fgrep - konno 24/11/21-22:52 No.11663
 ┃          ┗ Re^2: ren grep fgrep - 文太 24/11/22-00:31 No.11664
 ┗ DOSVAXJ3 (2024/11/18)テスト版 - konno 24/11/18-18:00 No.11655

(11538) 11538DOSVAXJ3 (2024/10/11)版  投稿者:konno   2024/10/11(金) 20:11
   コメント数 5

DOSVAXJ3 (2024/10/11)版が公開されました。
内容は

-----------------------------------------------------------
build JP241011 (2024/10/11)
int 2Fh ax=1703h のクリップボードセットで文字列末尾が欠けるのを修正しました。

-----------------------------------------------------------

これで DOSVAXJ3 でもクリップボードが使えるようになりました。
ありがたいです。

ClpPst.def の INT2Fペーストで末尾に ^A が出る場合があったのでこの後修正します。

      - No.11538 -    このTreeへ           [リストへもどる] soft


(11538) 11559DOSVAXJ3 Win32プログラム対応テスト版  投稿者:konno   2024/10/19(土) 17:25
    11538 番 konno さんへのコメント

軟式さんに許可をいただいたので、以下にテスト版URLと説明を載せます。

-----------------------------------------------------------

 テスト版を作成しました。下記よりダウンロードしてください。
 64bit 版実行ファイルのみです。
https://www.nanshiki.co.jp/test/dosboxj_test2.zip

 Vz のマクロから CLPPST.EXE を呼び出してコピー・ペーストできる事は
確認しています。

 mount したドライブ上でのみ使用可能です。imgmount したドライブ上の
ファイルはWindows からは見えませんので使用できません。
 また、mount c c:\ 等として Windows のドライブと DOSVAXJ3 上のドラ
イブ構造が同じとなるようにしてください。
 mount c c:\dos 等とすると Windows のコンソールプログラムから参照
するファイルと DOSVAXJ3 から参照するファイルのパスが異なってしまい
期待通りの動作をしなくなりますのでご注意ください。
 上記例の場合 Windows の C:\DOS\VZ に Vz 関連が入っているとして
C:\DOS\VZ\CLPPST.TMP .. Windows 上のファイルパス
C:\VZ\CLPPST.TMP     .. DOSVAXJ3 上のファイルパス
 と異なったパスになってしまいます。
 Windows コンソールプログラムに正しいファイルパスを渡せるようであ
れば問題はありません。
 またフルパスを指定せずカレントディレクトリのファイル名を渡すのも
問題ありません。例えば DOSVAXJ3 上で C:\VZ に移動し
C:\VZ> CLPPST /R CLPPST.TMP
 とした場合は Windows 上の C:\DOS\VZ\CLPPST.TMP を読み込むことがで
きます。
 おまけで Windows デスクトッププログラムも DOSVAXJ3 から起動できる
ようにしています。

 今回の目的としては clppst.exe 使用だと思いますので問題ないとは思
いますが、コンソールプログラムで文字入力があるものは使用できません
のでご注意ください。固まってしまうので、一定時間出力なしで強制終了
させています。

-----------------------------------------------------------

私は [autoexec] セクションに
mount c c:\
mount d d:\
こうしているので問題ないですが、確認しておいた方がいいですね。
VTDOSやMS-DOS Playerはデフォでドライブ丸ごとマウントしているだろうから同じ土俵に上がった感じですね。
本当にありがとうございました。

      - No.11559 -    このTreeへ    コメント元:11538 へ [リストへもどる] pre


(11538) 11630DOSVAXJ3 (2024/11/06)テスト版  投稿者:konno   2024/11/07(木) 01:29
    11538 番 konno さんへのコメント

軟式さんから DOSVAXJ3 (2024/11/06)テスト版のメールをいただきました。
内容は

-----------------------------------------------------------

> stdout と stderr が分離できていなかったのと、Windows アプリ側から
>カレントディレクトリのファイルを正しく認識できていなかったのを修正
>しています。テスト版は下記からダウンロードできます。
>https://www.nanshiki.co.jp/test/dosboxj_test3.zip

-----------------------------------------------------------

細かい修正があるようです。
CLPPST.EXE もバッチリですし、32ビットのCOPY系も動くようになり、快適です。
正式版がまちどうしいですね。
本当に感謝です。

      - No.11630 -    このTreeへ    コメント元:11538 へ [リストへもどる] soft


(11538) 11631DOSVAXJ3 (2024/11/07)テスト版  投稿者:konno   2024/11/07(木) 22:11
    11538 番 konno さんへのコメント

軟式さんから DOSVAXJ3 (2024/11/07)テスト版のメールをいただきました。
内容は

-----------------------------------------------------------

> さらにいろいろ見直しまして、ドライブのルートを mount しなくても
>大丈夫になりました。テスト版は下記にあります。
>https://www.nanshiki.co.jp/test/dosboxj_test4.zip

> mount c c:\dos 等として、Windows コンソールプログラムに DOSVAXJ3
>上の C ドライブのファイルを指定して渡しても大丈夫です。
> 処理としてはコマンドラインパラメータのパスを書き換えています。

-----------------------------------------------------------

mount e d:\log\fgal\ として、32ビットコピーも問題なく出来ました。
これはいいですね。ますます便利になりました。
作者様に感謝です。

      - No.11631 -    このTreeへ    コメント元:11538 へ [リストへもどる] soft


(11538) 11645DOSVAXJ3 (2024/11/15)テスト版  投稿者:konno   2024/11/16(土) 00:45
    11538 番 konno さんへのコメント    コメント数 1

DOSVAXJ3 (2024/11/15)テスト版のメールをいただきました。
内容は

-----------------------------------------------------------

 さらに見直しまして、Visual C++ 製のプログラムであれば入力も可能とな
りました。clppst.exe は Delphi 製ですが入力はありませんので問題なく動
作します。

 途中で止まってしまうプログラムは Ctrl-C で強制終了できるようになりま
したのでタイムアウトによる終了はなくなりました。

 表示がでない Windows コンソールプログラムがありましたら
> set dosvaxj3=noinput
 とした後で実行してみてください。
> set dosvaxj3=setenv
 で現在設定されている環境変数を Windows コンソールプログラムに渡しま
す。PATH 等は上書きされます。ただし COMSPEC と DOSVAXJ3 は渡しません。
 両方設定する場合は set dosvaxj3=noinput,setenv となります。

 テスト版は下記にあります。
https://www.nanshiki.co.jp/test/dosboxj_test5.zip

 特に問題がなければ来週早々に正式版にする予定です。

-----------------------------------------------------------

ということでテスト版試してみました。
GREPなど入力系のプログラムが動くようになりました。ありがとうございます。
うれしいです。

gawk はリダイレクトでsyntax errorが出ましたが、リダイレクトしなければ動きました。

gawk "BEGIN{print mktime("""2004 09 28 20 57 00""")} >utime
gawk:                                                ^ syntax error

gawk "BEGIN{print mktime("""2004 09 28 20 57 00""")} 
1096372620

試した版は以下の日付のものです。
GAWK     EXE       446,464 05-12-23    0:24
GREP     EXE        96,256 09-02-13   17:19
YAGREP   EXE       233,472 09-03-31    2:28

grep.exe は、フォルダの再帰検索が安定しているので動いて嬉しいです。
GREP -Hnir "yagrep" *.*

yagrep.exe は、DCログの再帰検索で漏れが結構ありました。
Yagrep -r "yagrep" D:\log\fgal\DC\

この2つで比べてみてください。yagrep.exe の漏れは仕様かも。
テスト版の動作検証にご協力願います。m(__)m

      - No.11645 -    このTreeへ    コメント元:11538 へ [リストへもどる] pre


(11538) 11646Re: DOSVAXJ3 (2024/11/15)テスト版  投稿者:文太   2024/11/16(土) 15:51
    11645 番 konno さんへのコメント    コメント数 1

konnoさん

>yagrep.exe は、DCログの再帰検索で漏れが結構ありました。

 お久です。うーん、すっかりPCいじりの世界からは遠のいております。
 例によって、今日も超疲労モード。

 さて、yagrep.exeですが、このようなテストには向かない道具かと思います。
 Bruce.さんが、onigsed, yagrep とも、正規表現エンジン鬼車を搭載して、
GNU sed & grep を日本語対応させて移植してくれたものなのですが、詳細は
省かせていただきますが、僕はまったく使っていない、ないし使わないことに
したツールです。限界などをみきわめられれば使えるところを使うことは可能
なのかもしれませんが、ちょっと、、、。
 対象ファイルに漏れがでる、ということですよね。僕はこれを経験して
いませんが、それ以外で、、、。うーん、考え方によってはヒットすべき
ものがヒットしていないから、あたかもそのファイルが検索されていないかの
ように見えることもあり得るのかな?

 環境を試すツールがあれですと、環境かツールか? と沼にはまりそうな
気がします。


      - No.11646 -    このTreeへ    コメント元:11645 へ [リストへもどる] soft


(11538) 11647Re^2: DOSVAXJ3 (2024/11/15)テスト版  投稿者:konno   2024/11/16(土) 22:48
    11646 番 文太 さんへのコメント    コメント数 3

>  お久です。うーん、すっかりPCいじりの世界からは遠のいております。
>  例によって、今日も超疲労モード。

文太さん、お久です。お元気そうで安心しました。

>  さて、yagrep.exeですが、このようなテストには向かない道具かと思います。
>  Bruce.さんが、onigsed, yagrep とも、正規表現エンジン鬼車を搭載して、
> GNU sed & grep を日本語対応させて移植してくれたものなのですが、詳細は
> 省かせていただきますが、僕はまったく使っていない、ないし使わないことに
> したツールです。限界などをみきわめられれば使えるところを使うことは可能
> なのかもしれませんが、ちょっと、、、。

私が使っている grep.exe は多分 GNU GREP だと思うんですが、yagrep は GNU系だったんですね。
今回のテストはあくまで DOSVAXJ3テスト版で動作するようになった32ビットの入力系コマンドの検証なので。
grep.exe などは今までは使えなかったのです。

>  対象ファイルに漏れがでる、ということですよね。僕はこれを経験して
> いませんが、それ以外で、、、。うーん、考え方によってはヒットすべき
> ものがヒットしていないから、あたかもそのファイルが検索されていないかの
> ように見えることもあり得るのかな?

この掲示板の過去ログで話題にしているかと思い検索したら、yagrep の癖など全部話題に出ていましたね。
#8206
> XXXX.HTM 219593: 需要予測
> だけど、この、「需要予測」 が、Yagrep だと検索引っかからないんですよ。
> 「予」が、$975C なので、「¥」$5C と認識しているのかも。
>       --ctype=SJIS              force matching in Shift-JIS mode
> このオプションを付けてもダメだったような。
#8210
> >だけど、この、「需要予測」 が、Yagrep だと検索引っかからないんですよ。
>  再現しました。

また MS-DOS player でも yagrep.exe は動かなかったんですが、それも
#7774 GREP の動作の違い
> MS-DOS Player + yagrep
> C:\VZ\K07T5>C:\UT\YAGREP.EXE "AF"
> 'C:\UT\YAGREP.EXE"  "AF' は、内部コマンドまたは外部コマンド、
> 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

この時と同じメッセージなので、やはり32ビットの入力系コマンド対応は難しいということなのかも。

>  環境を試すツールがあれですと、環境かツールか? と沼にはまりそうな
> 気がします。

環境とは DOSエミュのことですよね、その違いがツールの動作に影響することは確かにありそうですね。

      - No.11647 -    このTreeへ    コメント元:11646 へ [リストへもどる] pre


(11538) 11648Re^3: DOSVAXJ3 (2024/11/15)テスト版  投稿者:文太   2024/11/17(日) 15:54
    11647 番 konno さんへのコメント    コメント数 1

konnoさん

C:\BIN>dir | grep -i "grep"
1994/06/02  18:50            90,959 EGREP.EXE
2003/04/14  00:00            80,412 FGREP.EXE
1994/06/02  18:50            90,959 GREP.EXE
1999/11/11  00:00            82,944 OGREP.EXE
2009/03/31  02:28           233,472 yagrep.exe
1994/04/30  10:07            66,700 YGREP.EXE
1993/04/11  16:05            23,997 IZGREP.EXE

 32ビットアプリと16ビットアプリ。上の3つは32ビット
だったのではないのかな?

https://www.vector.co.jp/soft/dos/util/se008484.html?_ga=2.40740194.1106177368.1731818139-1020062094.1731818139
 これじゃないかな?

 で、本文に戻ります。

>文太さん、お久です。お元気そうで安心しました。
 基本的には元気で健康です。ただ今年はなんだかんだと忙しくて。
 あと4か月半!

>今回のテストはあくまで DOSVAXJ3テスト版で動作するようになった32ビットの
>入力系コマンドの検証なので。
 VTDOS以外のDOSエミュレータを使ってないので、よくは分からないのですが、
もしそれらがほんとの【DOS】(16bit)エミュレータなら、特別なことを
してくれてないと、32ビットアプリは動かないのが道理ですね。でも、rcp32.exe
とかも?

>この時と同じメッセージなので、やはり32ビットの入力系コマンド対応は難しい
>ということなのかも。
 VTDOSが「ほにゃららホストに丸投げしてます」とかで、32/64bit 環境も意識して
作られている、ということなのでしょうか。

>>  環境を試すツールがあれですと、環境かツールか? と沼にはまりそうな
>> 気がします。"
>環境とは DOSエミュのことですよね、

 はい、そのつもりです。考えてみたら、XPのDOS窓もDOSエミュでしたね。
 rcp32.exeもclppst.exeも、ふつうに動いていた。

 yagrep.exeがテストに向かないにせよ、一部動いた、みたいな結果だったのです
よね? 謎ですが。

>DOSVAXJ3テスト版で動作するようになった32ビットの入力系コマンド
 (繰り返しですが)yagrep.exe以外の32ビット grep でのテストがよろしい
かと。


      - No.11648 -    このTreeへ    コメント元:11647 へ [リストへもどる] pre


(11538) 11654Re^4: DOSVAXJ3 (2024/11/15)テスト版  投稿者:konno   2024/11/18(月) 00:47
    11648 番 文太 さんへのコメント    コメント数 1

> C:\BIN>dir | grep -i "grep"

おお、パイプでこんなことが出来るんですね。勉強になりました。
てか、このパイプは VTDOS でしか使えないようですね。
DIR *grep*   		だと全ファイル表示してしまいますね。
tosfind.exe /n*grep*   	これは目的のファイルだけ表示してくれますが、下位フォルダまで表示してしまいますね。
mls.com /l *grep*	これも目的のファイルだけ表示してくれますが、DOSVAXJ3では何故か全ファイル表示してしまいます。
LS系は目的ファイルだけ表示するものと全ファイル表示するものが混在しているようです。
余談になりました。(^^;

> https://www.vector.co.jp/soft/dos/util/se008484.html?_ga=2.40740194.1106177368.1731818139-1020062094.1731818139
>  これじゃないかな?

日付もサイズも全然違うので別物だと思います。いつどこで落としたのか思い出せないです。(^^;

>  基本的には元気で健康です。ただ今年はなんだかんだと忙しくて。
>  あと4か月半!

無理せず頑張ってください。

> もしそれらがほんとの【DOS】(16bit)エミュレータなら、特別なことを
> してくれてないと、32ビットアプリは動かないのが道理ですね。でも、rcp32.exe
> とかも?

かなり特別な処理をしてくれているようです。CLPPST.EXE がきっかけで対応してくれたのでありがたいです。
コピー系は ZCPY32.EXE が動くので rcp32.exe も大丈夫だと思います。

>  VTDOSが「ほにゃららホストに丸投げしてます」とかで、32/64bit 環境も意識して
> 作られている、ということなのでしょうか。

結果的にパイプにも対応できているのは凄いことなんだなと改めて思いました。

>  yagrep.exeがテストに向かないにせよ、一部動いた、みたいな結果だったのです
> よね? 謎ですが。

他のDOSエミュでも同じ結果のようなので、やはり yagrep.exe 自体の問題と思われます。

>  (繰り返しですが)yagrep.exe以外の32ビット grep でのテストがよろしい
> かと。

常用の grep が動いているのでおおむね問題なさそうだと思います。

      - No.11654 -    このTreeへ    コメント元:11648 へ [リストへもどる] pre


(11538) 11657パイプと同等の処理を BATで  投稿者:konno   2024/11/19(火) 20:28
    11654 番 konno さんへのコメント

> > C:\BIN>dir | grep -i "grep"
> おお、パイプでこんなことが出来るんですね。勉強になりました。
> てか、このパイプは VTDOS でしか使えないようですね。

こういうパイプは BAT で同等の処理が出来るかもと思いやってみました。

dirp.bat
rem dir | grep -i "grep"
dir > c:\tmp\pipe.tmp
grep -i %1 c:\tmp\pipe.tmp

dirp grep
で、同等の結果が得られました。
パイプの記述より短くすむのと、どのDOSエミュでも動くのが利点です。
名前は dirg の方がいいかしら?
この手法は応用が利きそうですね。(^_^)

      - No.11657 -    このTreeへ    コメント元:11654 へ [リストへもどる] soft


(11538) 11649Re^3: DOSVAXJ3 (2024/11/15)テスト版  投稿者:文太   2024/11/17(日) 16:02
    11647 番 konno さんへのコメント    コメント数 1

konnoさん

C:\BIN>dir | grep -i "awk"
1993/09/25  05:51           188,444 JGAWK.EXE  16bit
1998/08/22  22:01           142,759 MAWK32.EXE  コレ
              サイズからして日本語対応してなさそう

C:\BIN>dir | grep -i "sed"
1988/03/02  06:11            15,366 OLDSED.EXE  16bit
1999/06/20  13:40            90,112 sed32.exe  コレ
              日本語対応してそう

 grepと同じことは、sed, awkでもできます。タイムスタンプとかファイル
サイズだけみて、上のリストはいい加減なことを言っている可能性が
あります。oldsed.exeとかは、serowさんの超古典の奴です。
 ベクタで探してみてください。

      - No.11649 -    このTreeへ    コメント元:11647 へ [リストへもどる] pre


(11538) 11651Re^4: DOSVAXJ3 (2024/11/15)テスト版  投稿者:としき   2024/11/17(日) 17:38
参照先:http://toshiki.la.coocan.jp/
    11649 番 文太 さんへのコメント    コメント数 1

> 1993/09/25  05:51           188,444 JGAWK.EXE  16bit
> 1998/08/22  22:01           142,759 MAWK32.EXE  コレ
>               サイズからして日本語対応してなさそう

うちのawkは

JGAWK    EXE       188,444 93-09-25    5:51
MAWK32   EXE       193,536 98-08-22   23:02

こうなっていますが、いずれも日本語対応しています。
って、mawk32は、なんかすげぇ微妙なバージョンの差異があるかも。

>  grepと同じことは、sed, awkでもできます。

御意。
単に専用ツールか多機能ツールかの違いだけ。
鶏を割くのに牛刀を使って何が悪い。

      - No.11651 -    このTreeへ    コメント元:11649 へ [リストへもどる] pre


(11538) 11652mawk32.exe  投稿者:文太   2024/11/17(日) 20:15
    11651 番 としき さんへのコメント    コメント数 1

としきさん

 (以下すべて、VTDOS環境です)

 多謝。ベクタにありました。ソースもありました(???.tar.gzの展開の
仕方わすれたのだけど)。

C:\WK>dir

1997/11/01  11:02            44,369 mawk.doc
1998/08/22  22:02           193,536 mawk32.exe
1996/09/18  10:23             2,524 README
1998/08/22  21:59             6,390 README.SJ

----- t.txt -----
 まだ何か思いつくの?
 ディレクトリ再帰について。
-----------------

----- t.awk -----
/ディレクトリ/{
print}
-----------------

C:\WK>mawk32.exe -f t.awk t.txt
 ディレクトリ再帰について。

>って、mawk32は、なんかすげぇ微妙なバージョンの差異があるかも。

 ファイルサイズからして、僕のmawk32.exeは、日本語対応のない
英語圏から落とした奴だったんじゃないかな。
 タイムスタンプが、え、え、え??? という感じだったけど。
 無事、日本語対応 mawk32 がゲットできました。多謝。
 16bit の jgawk.exeしか、ほとんど使ったことないのだけど。


蛇足:

C:\WK>mawk32 -W version(新版)
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
  Adaptation for MBCS (P. yedoensis R27) by KIMURA Koichi


C:\WK>cd c:\bin

C:\BIN>mawk32 -W version(旧版)
 VTDOSがはじいて、「アプリケーションエラー」

 おめでとう! きっと使わないけど、使える mawk32.exe だ!


      - No.11652 -    このTreeへ    コメント元:11651 へ [リストへもどる] pre


(11538) 11653.tar.gz 展開(by LHMelting)  投稿者:文太   2024/11/17(日) 23:00
    11652 番 文太 さんへのコメント

 自己レスです。

> 多謝。ベクタにありました。ソースもありました(???.tar.gzの展開の
>仕方わすれたのだけど)。

 LHMelting を使うのは久しぶりでしたが、mawk-1.3.3-mbcs.tar.gz を無事、
解凍できました。mawk のソース、あひゃひゃひゃひゃ状態。
 これを勉強する日は、ないんだろうなぁ。
 Win11 (64bit) でも、LHMelting 動きますね。


      - No.11653 -    このTreeへ    コメント元:11652 へ [リストへもどる] soft


(11538) 11650Re^3: DOSVAXJ3 (2024/11/15)テスト版  投稿者:文太   2024/11/17(日) 16:18
    11647 番 konno さんへのコメント    コメント数 1

konnoさん

 まだ何か思いつくの?
 ディレクトリ再帰について。

Wild -D -R "head -7 $f >c:\wk\$x" c:\bin\asm_stdy\*.doc

 ドックを詳細に読まないと意味不明かもしれませんが、wild.doc
の冒頭に上のメモがありました。
 Siさん作の、wild.exe(16bit, 32bit 両方の版あり)の
コマンドサンプルです。

 「ファイル冒頭7行を見せろ」という命令のようです。
 -D は、Dummy で、ワイルドカードの展開の様子だけデモせよ、という
意味だったと思う。
 -R が、Recursive(再帰)の意味だったと思う。
 「c:\bin\asm_stdy\」以下の *.doc が対象ファイル。

 grep, sed, awk (その他のフィルター系ツール)は、多くの場合、
ディレクトリ再帰のオプションがありません。

 wildをかませると再帰できるよ、ということです。
 実用性を付け加えて、問題を複雑にしている、という気はしています。


      - No.11650 -    このTreeへ    コメント元:11647 へ [リストへもどる] soft


(11538) 11656Re^4: DOSVAXJ3 (2024/11/15)テスト版  投稿者:konno   2024/11/19(火) 20:07
    11650 番 文太 さんへのコメント    コメント数 1

>  ディレクトリ再帰について。
> Wild -D -R "head -7 $f >c:\wk\$x" c:\bin\asm_stdy\*.doc

これは使ったことが無いので使い方を理解するのに時間が掛かりました。
head というコマンドが必要だったんですね。VECTORで落としましたが、type でも動きました。
が、DOSVAXJ3 では何故か動かなかったです。
MS-DOS のバージョンが違います. とヒット数ぶん表示して終わります。
これは16ビット版と32ビット版どちらも同じエラー表示です。
内蔵のコマンドラインの解釈によるのかなとか思いました。

>  実用性を付け加えて、問題を複雑にしている、という気はしています。
まさに動作が複雑すぎて問題の原因がわかりにくくなってしまってますね。(^^;

入力系といえば、more.exe がありましたね。Win10のもので試しました。
DOSVAXJ3最新版で試しましたが、そのままでは表示無しで終了しました。
set dosvaxj3=novc
の後で試しても同じでした。

set dosvaxj3=noinput
の後で試すと、表示が途中で止まらないで終了しました。
使ってないので困ってはいないですが、VC系のコマンドではないのかなぁ。

      - No.11656 -    このTreeへ    コメント元:11650 へ [リストへもどる] soft


(11538) 11658wild.exe と ディレクトリ再帰  投稿者:文太   2024/11/19(火) 21:28
    11656 番 konno さんへのコメント    コメント数 1

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関係本は、うう、どうしよう? ですが。
 とっとく!

追伸:「引用なし」ボタン。最高です。僕はこれを愛してます。


      - No.11658 -    このTreeへ    コメント元:11656 へ [リストへもどる] pre


(11538) 11659Re: wild.exe と ディレクトリ再帰  投稿者:konno   2024/11/20(水) 14:25
    11658 番 文太 さんへのコメント    コメント数 1

> >が、DOSVAXJ3 では何故か動かなかったです。
>  これは、DOSVAXJ3の作者様に報告していただくしかないでしょう。

作者様にメールしたんですが、その後に私の設定ミスが原因だったことが判明しました。(>_<)

> 余談ですが、Si氏の wild.exe というワイルドカードを付与するコマンドが動きません。
> MS-DOS のバージョンが違います. とヒット数ぶん表示して終わります。
> これは16ビット版と32ビット版両方ありますが、どちらも同じエラー表示です。

この件ですが、私の dosboxj.conf の設定が原因でした。
非常駐VZのコマンドラインで何を入れてもエラーになるので気が付きました。
dosboxj.exe を10/11版まで戻しても変わらなかったので、dosboxj.confを見てみました。
[autoexec] セクションで

set COMSPEC=c:\ut\95\COMMAND.COM

これが入っていて、Win98ME の command.com が呼ばれていたようです。
いつ入れたのか覚えていなくて、気がつかなかったのです。
ここをコメントにしたら正常に動作しました。
お騒がせして申し訳ないです。すみませんでした。
作者様に謝罪メールしました。m(__)m


>  で、元にもどっていちおう整理を試みると、なぜwild.exeが登場したかと
> いうと、yagrepで「ディレクトリ再帰」が変、とkonnoさんが仰っていたから
> です。
再帰というわけではなく、検索漏れが多かったのです。これは過去ログでも言っていました。

>  以下の表をみてください。16bit の grep で「ディレクトリ再帰」が
> オプションで可能なのは、wgrep, ygrep, jgslimだけだそうです。
>  で、grep, sed, awk にも、ふつうその機能はないけれど(多くのフィルタ系
> ツールも)、wild.exeをかませると、それが可能ですよ、と実用的なことを
> 話に僕がまぎれこませた、ということです。

grep に再帰機能が無いのが普通なのですね。知りませんでした。
私が常用している wgrep と grep(32) にはどちらにも再帰機能があったもので。
そういう意味では wild.exe のご紹介はありがたい情報でした。
wild.exe って、ワイルドカードの機能を付加してくれるだけだと思っていたもので。

>  DOSVAXJ3 のテスト。これがkonnoさんの主目的ですよね?
>  だとしたら、まず、VTDOSと結果を比較するのがよいのではないでしょうか?

うーん、私の書き方がよくないのかなぁ。3種のDOSエミュで比べた結果を書いているつもりなんですが。
主語が無いからかなぁ。そもそも比較無しでは変だとかわからないし。

>  dir みたいな内部コマンドだと、さて誰が展開するのでしょう? ですが。
>  command.com? あるいは、DOSエミュレータ本体?
このあたりの疑問が今回の迷走に繋がっているかもですね。(^^;

>  大量に本を捨てている毎日ですが(仕事おさめ)、DOS関係本はとって
> あります! fortranとpascal関係本は、うう、どうしよう? ですが。
>  とっとく!
やはり文系の人は本が大量にあるのですね。うちはそれほどないですが、腐海で腐ってます。(^^;

> 追伸:「引用なし」ボタン。最高です。僕はこれを愛してます。
わずかの手間の差と思いますが、そう言っていただくと嬉しいです。

      - No.11659 -    このTreeへ    コメント元:11658 へ [リストへもどる] soft


(11538) 11660Re^2: wild.exe と ディレクトリ再帰  投稿者:文太   2024/11/20(水) 21:37
    11659 番 konno さんへのコメント    コメント数 1

konnoさん

>作者様にメールしたんですが、その後に私の設定ミスが原因
 原因が判明してよかったですよね。
 やっぱり作者様に報告したのに、自分のミスだったというのは
格好が悪いかもしれませんが、良好な関係ができていたら、「ごめん、
こっちのミス」もありでしょう。というか、僕はそればっかの人生みたい。

>[autoexec] セクションで
>set COMSPEC=c:\ut\95\COMMAND.COM

 そ、そんなディレクトリがあるんですか?! さすが。
 Win95系のツールとかも、ここに格納されていると。

>再帰というわけではなく、検索漏れが多かったのです。

#11645
>grep.exe は、フォルダの再帰検索が安定しているので動いて嬉しいです。
>GREP -Hnir "yagrep" *.*

>yagrep.exe は、DCログの再帰検索で漏れが結構ありました。
>Yagrep -r "yagrep" D:\log\fgal\DC\

 どっちにも、-r (recursive) がはいってますけど、、、。
 「再帰検索が安定」あるいは「漏れ」では、再帰に問題があると書かれて
いるように思われるのですが。

 細かくて、すみませぬ。

 ただ、現実的にいって、yagrep.exeには、いろんな問題があると思います。
 僕はHDから消してしまってもいいくらいの信頼感です。
 これだけ指摘したかったのです。
 もっとも、grep に Perl5 の正規表現は、僕ですら大して欲していなかった
と思う。

 たぶんkonnoさんがお使いのgrep(32)もGNUのものでしょうから、「GNU
による拡張」ですが、ちゃんと Perl5 の正規表現が使えます。

 -P
 --perl-regexp
 matching Perl regular expressions
Interpret the pattern as a Perl regular expression.

 ま、yagrepとonigsedについては、僕のような非力&根性なし
テスターしかいなかった、というのが不幸の原因でした。konnoさんが、Bruce.
さんと一緒だったら、きっともっと完成度の高いものになっていたでしょう。

2009/03/31  02:28           233,472 yagrep.exe

 15年まえ。僕がテスターをしたのは、これより2年前くらいだったのかな?


      - No.11660 -    このTreeへ    コメント元:11659 へ [リストへもどる] pre


(11538) 11661Re^3: wild.exe と ディレクトリ再帰  投稿者:konno   2024/11/21(木) 16:15
    11660 番 文太 さんへのコメント    コメント数 1

>  やっぱり作者様に報告したのに、自分のミスだったというのは
> 格好が悪いかもしれませんが、良好な関係ができていたら、「ごめん、
> こっちのミス」もありでしょう。というか、僕はそればっかの人生みたい。

私も最近メールのやり取りが増えたんですが、自爆タコミスの謝罪は多いです。(>_<)

> >set COMSPEC=c:\ut\95\COMMAND.COM
>  そ、そんなディレクトリがあるんですか?! さすが。
>  Win95系のツールとかも、ここに格納されていると。

いや、command.com だけです。って今見たら Win95 のだった。いいかげんですみません。

>  「再帰検索が安定」あるいは「漏れ」では、再帰に問題があると書かれて
> いるように思われるのですが。

再帰の時だけ漏れが増えるとかは普通考えられないと思うし、それだとワイルドもどうなのと思ってしまいます。
でも絶対ないとは言えないか・・・
#11647
> #8206
> > XXXX.HTM 219593: 需要予測
> > だけど、この、「需要予測」 が、Yagrep だと検索引っかからないんですよ。
> > 「予」が、$975C なので、「¥」$5C と認識しているのかも。
ここでは再帰とは言っていないし。共通項は「検索漏れ」です。
思うにユニコード用のツールはSJISにも完全対応させるのは難しいのだろうと思います。
万能で完全なツールなんて無いので、それぞれの環境や使い方に合ったものを選択するのが吉かと。
私は正規表現はほとんど使わないし、それよりオア検索したいので CODEX.DEF を愛用しているんですね。

>  たぶんkonnoさんがお使いのgrep(32)もGNUのものでしょうから、「GNU
> による拡張」ですが、ちゃんと Perl5 の正規表現が使えます。

正規表現は使えれば便利ですが、私はほとんど使ってないので、通常検索で漏れの少ないものを選んだのです。

>  ま、yagrepとonigsedについては、僕のような非力&根性なし
> テスターしかいなかった、というのが不幸の原因でした。konnoさんが、Bruce.
> さんと一緒だったら、きっともっと完成度の高いものになっていたでしょう。

私は正規表現もフィルター系ツールもあまり使ってないのでこの方面は文太さんの方が適任ですよね。
私が苦手なだけか。としきさんやめざらさんにも教えてもらうことが多いですからね。(^^;

      - No.11661 -    このTreeへ    コメント元:11660 へ [リストへもどる] soft


(11538) 11662ren grep fgrep  投稿者:文太   2024/11/21(木) 19:01
    11661 番 konno さんへのコメント    コメント数 1

konnoさん

C:\>yagrep --help
(中略)
multi-byte extention:
      --ctype=ASCII             force matching in ASCII mode
      --ctype=EUC               force matching in EUC-JP mode
      --ctype=SJIS              force matching in Shift-JIS mode
      --ctype=UTF8              force matching in UTF-8 mode

 このオプションで明示的に SJIS mode でも、うーん、な結果だったと
思います。
 とにかく、僕的なポイントは、yagrepで何かをテストすると沼です、
これだけです。

>正規表現は使えれば便利ですが、私はほとんど使ってないので、通常検索で漏れの
>少ないものを選んだのです。

 こういう時は、grep.exe を 別ディレクトリにコピーの上、fgrep.exeに
リネームしましょう。正規表現が殺されます。すると、正規表現のメタ文字を
エスケープする手間が完全に省けます。意外にメタ文字に転んだりしてます。


      - No.11662 -    このTreeへ    コメント元:11661 へ [リストへもどる] pre


(11538) 11663Re: ren grep fgrep  投稿者:konno   2024/11/21(木) 22:52
    11662 番 文太 さんへのコメント    コメント数 1

>  このオプションで明示的に SJIS mode でも、うーん、な結果だったと
> 思います。

過去ログでこのような話は見たような気がします。

>  とにかく、僕的なポイントは、yagrepで何かをテストすると沼です、
> これだけです。

Parl5の正規表現と、GNUGREPの検索エンジンの相性か何かが悪いのかもですね。SJIS関連かも。

>  こういう時は、grep.exe を 別ディレクトリにコピーの上、fgrep.exeに
> リネームしましょう。正規表現が殺されます。すると、正規表現のメタ文字を
> エスケープする手間が完全に省けます。意外にメタ文字に転んだりしてます。

えっ、GNU系GREPにはこんな機能があるのですか。早速 OMAKE.DEFに仕込んで DCフォルダで試してみました。
まずは今まで通りで
D:\LOG\FGAL\DC>GREP -nir "yagrep.exe" *.*
No files matching: *.*

FGREPに名前を変更すると
D:\LOG\FGAL\DC>FGREP -nir "yagrep.exe" *.*
13/bak/yagrep.log:107:YAGREP.exe -i -H -n "^v\.c\.\/salon" c:\lx\log\vzlog\mixvz\mixvz91\vz901003.log >mixxx
13/bak/yagrep.log:177:> YAGREP.exe -i -H -n "^v\.c\.\/salon" c:\lx\log\vzlog\mixvz\mixvz91\vz901003.log >mixxx

更に深い階層から見つけ出してくれました。\(^^)/ ヤッタ-
これは良いですね、これからはこれで行きます。GREP も残しておいて比較してみます。
おいしい使い方を教えてくれてありがとうございます。

      - No.11663 -    このTreeへ    コメント元:11662 へ [リストへもどる] pre


(11538) 11664Re^2: ren grep fgrep  投稿者:文太   2024/11/22(金) 00:31
    11663 番 konno さんへのコメント

konnoさん

 konnoさんが試した結果については、うまく理解できませんでした。
 頭が働いてない。

grep では、"yagrep.exe"は、「.」が何でもあり(メタキャラ)、となり
fgrepでは、"yagrep.exe"は、「.」がピリオドと解釈されるはずです。

>GREP も残しておいて比較してみます。
 残しておきましょう。

 GNU特有だったか思い出せませんが、grepは、

grep	のままだど、basic regex (sed 相当)
egrep	とリネームすると、extended regex (vwx 相当。awk 相当)
fgrep	とリネームすると、no regex となります。

 3つ、grep.exe, egrep.exe, fgrep.exe をHDDに入れておいて
損はないと思います。
 とはいえ、grep 1つでも、オプションで、egrep, fgrep 相当に
振る舞えたはずだとは思いますが。

 fgrep.exe を使いたいときは、けっこう特殊だと思う。
 egrep.exe を使いたいときは、「拡張正規表現使うからな」(メタ
キャラ、+とか)と、思うと思う。

 3つ、c:\bin ディレクトリに入れておいて、損はないと思います。


      - No.11664 -    このTreeへ    コメント元:11663 へ [リストへもどる] pre


(11538) 11655DOSVAXJ3 (2024/11/18)テスト版  投稿者:konno   2024/11/18(月) 18:00
    11538 番 konno さんへのコメント

DOSVAXJ3 (2024/11/18)テスト版のメールをいただきました。
内容は

-----------------------------------------------------------

 さらに修正して C# 等で作られた .NET コンソールプログラムでも入力
可能となっています。環境変数の設定は noinput から novc に変更しま
した。
https://www.nanshiki.co.jp/test/dosboxj_test6.zip

-----------------------------------------------------------

ということでさらに多くのコマンドに対応されたようです。
ありがとうございます。

また、GAWKの件でも
>> gawk "BEGIN{print mktime("""2004 09 28 20 57 00""")} >utime
>> gawk:                                                ^ syntax error
> > の前に " が必要です。

とアドバイスをいただきました。これはVZマクロで
=utime
*m
89 ^\ "" #E "gawk $"BEGIN{print mktime($"$"$"2004 09 28 20 57 00$"$"$")} >utime" #m
*
こうなっていて、VTDOSではこれで動いていました。

89 ^\ "" #E "gawk $"BEGIN{print mktime($"$"$"2004 09 28 20 57 00$"$"$")}$" >utime" #m
こう修正したら、VTDOSでも DOSVAXJ3 でもキチンと動きました。ありがとうございます。

入力系=対話型とすると、CMD.EXE とかでしょうか。
DOSVAXJ3 で dir *grep*  とすると、カレントの全ファイルが表示されます。
CMD
dir *grep*
とすると、grep を含むファイルだけ表示されます。
exit で戻ると VZのコンソールに結果が入っていますね。これはありがたいです。
これは MS-DOS Playerや VTDOSでも出来ましたが、VZコンソールに結果は入りませんでした。

      - No.11655 -    このTreeへ    コメント元:11538 へ [リストへもどる] pre