FGALDC 15 /RE:19874 RE:ディレクトリリストの出力  こんにちは、文太 さん 》 あと、 ディレクトリ再帰の《深さ》の指定は、/s-2 とか(? やっぱり、再 》帰の場合にオプション付けたほうが素直そうだなぁ。単純に、/d2 =depthがいい このオプションは、設けない予定です。理由は、単に面倒だからです。 ループで実現しているのなら、今どのくらいの深さにいるか、というのは変数の 値を見るだけで簡単に分かるのですが、再帰の場合は、深さをカウントするため の変数をわざわざひとつ設けなくてはなりません。 もちろん、ロジックを作り変えて、再帰ではなくループで実現するという手もあ るのかもしれませんが、そうなると私の手には負えなくなってしまいます。 極端なことを言うと、将来のOSのバージョンでパスの最大長が無限大になった としても、再帰で作っておけばプログラムを改造する必要はない(せいぜいコン パイルし直しで済む)のですが、ループで作るとすると、たとえば深さ32767まで 等と、ループ変数のデータ型でたどれるディレクトリの深さが制限されてしまう 可能性も出てきてしまいますし。 》 そういえば、ディレクトリでない、ファイル名のリスト・アップなんですが、 》ワイルド・カード指定できる仕様で、お手元のが改変できますでしょうか?(も #19848 でも書いたように、tosfind にはOS標準のワイルドカードを実装しよう としています。 ただですねぇ、TFIND の仕様をチェックしていて1つバグらしき物を見つけてし まいました。属性指定のところなんですが、system や hidden 属性が付いている ファイルの場合、archive や readonly 属性の有無でファイルを抽出しようとし ても引っかかってくれない、というものです。これは、OSのファンクションコ ールをどのように呼べばこのような動作になるのかもわかるのですが、私の感性 だと「美しくない動作」ということになってしまうので、ここの部分の仕様は変 更します。 あと、属性に関してはもう一つ美しくない動作があります。 例えば、日付やサイズに関しては、同一のオプションを複数指定すると絞り込み 検索(AND検索)になります。/s10 /s-50 なんていう指定の時です。 日付に関しても、/d と /f で絞りこまれたもっとも狭い範囲が検索されます。逆 に言うと、1年以上経ったファイルと3日以内のファイルを表示する、という指 定はできないという事なんですが。 ところが、属性に関しては、複数指定するとOR検索になるのです。 これは、ファイル名の指定に関してもOR検索というところは同じなのですが、 ファイル名の場合は指定しなかった場合エラーになるにもかかわらず、属性の場 合はあくまでもオプションです。 ということで、tosfind のオプションは TFIND に対して以下のような形になる予 定です。 完全互換:/f /s /d /vf 変更  :/n /a 廃止  :/l /vl /vt /p オプション複数指定時の動作:  ファイル名のみOR検索  他のオプションは全てAND検索(絞り込み条件) 》 そして、大文字・小文字の謎が解けました。コマンドラインのパラミータをそ 》のまま写してますよね。これは、ドックに書いておいても悪くないと、思いまし あ〜、これは面倒だけど、やらなきゃダメだな。 もう一つおまけに見つけてしまったのですが、現状では、dirlist c:\program と やったときに、もし仮に c:\program が存在しなくても、c:\program が表示され てしまいます。これの改善と合せて、正しい大文字・小文字表記になるようにな んとかやってみます。                                 としき