-- PureMind -- 日本語でプログラミング(その2)
2020-02-16


Mindでのプログラミングにだいぶ慣れてきました。前回掲載した練習プログラムも 実用レベルになりましたので、再掲載します。日常使いしています。

※ which.src -- 環境変数PATHに設定されたディレクトリを辿って指定されたファイルを探す。
※ 見つからない時は、何も表示しない。
※ ファイル名が'\'で始まる場合、'\'を無視する。

フルパス名文字列は 文字列実体 長さ 64。
元パス文字列は 文字列実体 長さ 128。

使い方表示とは
        "使い方: WHICH ファイル名"を 表示し 改行すること。

メインとは
        ファイル名文字列は 文字列

        起動パラメータを ファイル名文字列に 入れ
        ファイル名文字列が 空列? ならば
                使い方表示し 終り
        つぎに
        
        ファイル名文字列の 左端文字が '\'と 等しい ならば
                1だけ ファイル名文字列から 切り出し
        つぎに
        
        "PATH="で 環境変数の検索し
        環境変数を 元パス文字列に 入れ
        1だけ 元パス文字列を 右側取り出し ";"と 等しい文字列 でなければ
                元パス文字列に ';'を 一文字追加し
        つぎに
        
    ここから
        元パス文字列が 空列? ならば 打ち切り
        つぎに
            元パス文字列から ';'を 一文字検索
            元パス文字列を 分断し フルパス名文字列に 入れ
                        1だけ フルパス名文字列を 右側取り出し "\"と 等しい文字列 でなければ
                                '\'を フルパス名文字列に 一文字追加し
                        つぎに        
                        ファイル名文字列を フルパス名文字列に 追加し
                        フルパス名文字列 ファイル有り? ならば
                            フルパス名文字列を 大文字変換し
                            フルパス名文字列を 表示し 改行し
                                打ち切り
                        つぎに
        繰り返す。
このほかに、バッチファイルで使用するプログラムを2本作りました。バッチプログラムを組んでいると、 処理が終わった後に、現在のディレクトリ戻ってくるようにしたくなるときがあります。この様なときに 使用する小品です。一つは、現在のディレクトリを保存する"pushcdir.src"、保存したディレクトリに 移動する"popcdir.src"です。いずれもシンプルな物ですが、結構使い勝手があります。

まずは、"pushcdir.src"から。現在のディレクトリを取得してファイルに保存するだけです。

※ pushcdir.src -- 現行ドライブの現行ディレクトリを"C:\$$CDIR$$.TXT"に書き出す。

現行ディレクトリは 文字列実体 長さ 64。
現行ディレクトリ保管先は ファイル。

メインとは
        カレントドライブを 現行ディレクトリに 一文字追加し
        現行ディレクトリに ':'を 一文字追加し
        カレントドライブの 指定ドライブのカレントディレクトリを 現行ディレクトリに 追加し
        "C:\$$CDIR$$.TXT"で 現行ディレクトリ保管先を 新規オープンし
        現行ディレクトリを 現行ディレクトリ保管先に 一行書き込み
        現行ディレクトリ保管先を クローズする。

"popcdir.src"はこの様になっています。

※ popcdir.src -- "$$CDIR$$.TXT"ファイルから復元するディレクトリーを読みだし、
※ 現行ディレクトリーを変更する。

復元ディレクトリ保管先は ファイル。

メインとは
        復元ディレクトリは 文字列

        "C:\$$CDIR$$.TXT"で 復元ディレクトリ保管先を オープンし
        復元ディレクトリ保管先から 一行読み出し
        復元ディレクトリ保管先を クローズし
        読み出し文字列を 復元ディレクトリに 入れ
        復元ディレクトリ 0を 指定ドライブにカレントディレクトリ設定する。

この様にしてバッチファイルの中で使用します。

        @echo off
        pushcdir
        chdir \directory1
        JOOB1
        chdir \directory2
        JOB2
        popcdir
        @echo on


続きを読む

[コンピューター]
[Mind]
[PC-DOS]

コメント(全0件)
コメントをする


記事を書く
powered by ASAHIネット