プログラムを学校で学んでおらず独学にてやってきました。
バッチファイルで複雑なものを作ろうとすると乱雑に散らばってしまい
作りにくいだけでなく、メンテナンス性も悪くなります
是非こちらの階層構造を参考にして一度作ってみてください。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
program
├ root_core.bat / メインの基幹プログラム、メニュー表示及びそれに伴う処理、年月日のtempフォルダ内への書き込み処理を担当。プログラム動作中は常に動き続けています。
|
├ data / 【プログラムの内部設定等がこの中に入っています。】
| |
| ├ config / 初期設定値が入っています。場合に応じて変更してください。
| | ├ default_mode.txt / command_override.txt が存在しない場合の既定の実行コマンドを設定する為のコンフィグファイルです
| | └test_folder.txt / テスト実行時に主に使われるフォルダ階層
| |
| ├ log / ログデータの保存先(たまに削除しても問題ありません。)
| | └ renamed_file_pass.txt / リネームした、リネーム元のファイルパスを格納しています。
| |
| ☆├ menu_dir / ※【メニュー表示はここから追加】(2段階で表示(1階層目がページ数・2階層目が内容です。(最初に1-9までの数字をつけて追加(ソート+選択番号として使用)
| | ├ [各ページ数のページ番号](1ページ目に設定したいときのフォルダ名の例: 1 )
| | | └ [それぞれの選択項目](メニューの1番上に置きたいときのフォルダ名の例: 1_xxxx )
| | |
| | └ [各ページ数のページ番号](2ページ目に設定したいときのフォルダ名の例: 2 )
| | └ [それぞれの選択項目](メニューの上から5番に置きたいときのフォルダ名の例例: 5_xxxx )
| |
| ├ menu_dir_rule_template / 【上記2段階目のさらに内部に入れるファイルのテンプレートです。ここからコピペ等をして追加作業を行ってください。】
| | ├ command_override.txt / start や echo などの実行コマンドを個別に設定する為のテンプレートファイルです
| | ├ dir_config.txt / 上記もしくは初期設定で指定された実行コマンドで実行するファイルのディレクトリの記述する為のテンプレートファイルです
| | └ run_override.bat / 選択されたとき専用の処理が走るバッチ処理を実行します
| |
| └ template / プログラム内の共通メッセージ類の保存場所
| ├ app_message / プログラム自体の表示を行う文字を保存しているフォルダ
| | ├ title.txt / タイトル名を表示するための設定値
| | └ ver.txt /バージョン情報
| |
| └ message / プログラム内で頻発して使用する文字を保存しているフォルダ
| ├ ask_input.txt / キー入力の際のメッセージ
| ├ not_page.txt / 存在しないページを開こうとしたときのメッセージ
| └ one_more.txt / もう一度入力してほしい時のメッセージ
|
├ temp =テンポラリーフォルダ(データのキャッシュ場所です)(基本手動での変更操作は想定されていません
| |
| ├ copy_temp / コピー動作時に使用
| |
| ├ date / 【起動時各種年月日形式の保存場所】
| | ├ *.txt / 各種設定値、各プログラムが各ファイルから必要分を変数に入れて使用しています。
| | └ wareki_temp / 和暦への変換に使用
| | └ wareki_temp_No / 和暦への変換時にリネームを行い、1文字が出力できない問題を解決するためのものです。自動で動作しています。
| |
| ├ file_temp / 各種ファイル移動時に使用
| |
| ├ menu_temp / メニュー表示時に重要な役割を果たしています。絶対に触らないでください。
| | ├ menu_list_temp.txt / 表示しているメニュー内容(番号選択のキー入力番号に合わせるために1行目に文字列を入れ、その下から表示内容を自動読み込みした結果)
| | └ menu_page_counter / メニューに設定されている最大ページ数の自動読み込み結果(program\data\menu_dir\* の最大番号数を読み込み)
| |
| └ rename_temp / 各rename時に使用されます。
|
| -------------------------------------------------------------------------------------------------------------
├ copy_*.bat / コピー動作系
├ folder_*.bat / フォルダを開く作業を行う系
├ open_*.bat / ファイルを開く系
└ rename_*.bat / リネーム動作を行う系
【メニュー選択後、tempファイル内を参照する必要のある動作を行うものを、呼び出しに応じて起動されてくるプログラム群です。】
-------------------------------------------------------------------------------------------------------------