2017年7月16日日曜日

HDDの大量ファイルを利用はするが管理はしない。ファイル活用支援バッチ FileLinkMaker ver.1.5.170715

1.上記はINIファイルのみの起動直後の画面です。思うところがあって項目の順番と名前を変えました。 これは前述の【今更知ってしまった】ショートカットで再生リストを作ってプレイヤーに再生させる方法【Windows10 の再生プレイヤー( Windows Media Player or 映画&テレビ ) 限定かな?】の影響が多分にありまして、ファイルを集めて見るだけなら、エクスプローラから写真スライドビューや動画リスト再生しちまえば、複雑なアプリ設定とかする必要ないよね(''Д'') と言う訳で、アプリの起動は名前を「起動アプリ」と変わり末尾に移動しました。もちろん設定すれば以前と同様には使えます。

 2.項目の順番が変わった弊害として、以前のユーザ設定を読み込むと設定の指定がずれます。すんませんが手動で直してくださいorz

 3.「1.出力パス」と「1.検索パス」は名前の通り、PATH設定が必要な訳ですが、設定ラベルを記入しておくと、実行時にラベルに応じたPATHを展開します。もちろんさらにフォルダ名をつける事も出来ます。末尾には必ず\を付けてください。
 FILELINKBAT\  FileLinkMaker1.batの設置PATH。ここは検索対象外。
 USERPROFILE\  ログインユーザPATH
ex.
 FILELINKBAT\MMD\
 USERPROFILE\Picture\

 4.今回は値が無い場合は初期値を設定し、何処かにファイルを置いて管理者権限で動かせば即実行可能となるようにしています。

 5.検索条件を見直しました。画面で"/a-s-h-i"とありますが、""隠し" "システム" "非インデックス" は検索されないようにしています。実はこの中で"非インデックス"が結構重要な項目になってまして、このバージョンからシンボリックリンクの属性に"非インデックス"を付与してます。 "出力パスは検索条件から除外する"と合わせて、出力場所が検索範囲に入ってしまう場合の処理の高速化につなげています。
 ・FILELINKBAT 以下は無条件に検索対象外
 ・USERPROFILE\AppData 以下は無条件に検索対象外

 6. k[Enter]で設定を編集できないようにします。ただし□編集不可は出来ません。
 〇 編集可能
 ◇ 編集ロック中
 □編集不可 ※"4.検索範囲" "5.名前付順"が該当
 "保存 s" すると、"〇編集可能"項目のユーザ設定は FilelinkMaker.txtに保存。 それ以外はFilelinkMaker.iniに保存します。画面の設定では1.~3.はFilelinkMaker.txtに保存。4.~6.はFilelinkMaker.iniに保存となります。

 7. 検索条件は見出しのみ設定の場合、検索条件にもなるようにしました。ぶっちゃけ見出しと設定とを分けてると設定がメンドクサイ場合が多かったというのがあります。
上記例だと、"FILELINKBAT\映画 劇場 洋画 邦画" フォルダに"映画 劇場 洋画 邦画"で検索したシンボリックリンクが出来ます。

 8.「見出しを検索条件にする」事ができるようになったので、もう一つ進んで「項目設定で不正な値を検索条件として追加する」を追加しました。これでいちいち検索条件を設定してからリンクを作成するのでなく、検索文字列入力後に即リンク作成出来るようになりました。

 9.起動アプリ 該当ない場合、Explorerが立ち上がります。

 今までの機能はこちら参照っと、、、ドキュメントが分散してるなー、情報も古くなってるし、機能更新はここまでにしてドキュメントを更新して一つにする必要あるか。

HDDの大量ファイルを利用はするが管理はしない。ファイル活用支援バッチ FileLinkMaker.bat 機能説明(ランダム再生弐型追加)







追記 作った本人も忘れていた検索制限メモ
1.ネットワークドライブを検索する場合は、ULC(絶対パス)表記にしないと正しく動作しません。

追加調査
dosコマンドでパスやファイル名に特殊記号34個が含まれてた場合の挙動調査※先頭:半角スペース
 !"#$%&'()=~|`{+*}<>?_-^\@[;:],./\
"は除外

フォルダ作成 作成結果  検索パス保存 実行結果
md "c:\·test\" 〇c:\·test\ ×セーブ時に全角・に強制変換
md "c:\ test\" 〇c:\ test\ 〇c:\ test\ □短名出力
md "c:\!test\" 〇c:\!test\ ×セーブ時に!消える
md "c:\#test\" 〇c:\#test\ 〇c:\#test\
md "c:\$test\" 〇c:\$test\ 〇c:\$test\
md "c:\%test\" 〇c:\%test\ 〇c:\%test\ △出力されず
md "c:\&test\" 〇c:\&test\ 〇c:\&test\
md "c:\'test\" 〇c:\'test\ 〇c:\'test\
md "c:\(test\" 〇c:\(test\ 〇c:\(test\
md "c:\)test\" 〇c:\)test\ 〇c:\)test\ ×強制終了
md "c:\=test\" 〇c:\=test\ 〇c:\=test\ □短名出力
md "c:\~test\" 〇c:\~test\ 〇c:\~test\
md "c:\|test\" ×
md "c:\`test\" 〇c:\`test\ 〇c:\`test\
md "c:\{test\" 〇c:\{test\ 〇c:\{test\
md "c:\+test\" 〇c:\+test\ 〇c:\+test\ □短名出力
md "c:\*test\" ×
md "c:\}test\" 〇c:\}test\ 〇c:\}test\
md "c:\<test\" ×
md "c:\>test\" ×
md "c:\?test\" ×
md "c:\_test\" 〇c:\_test\ 〇c:\_test\
md "c:\-test\" 〇c:\-test\ 〇c:\-test\
md "c:\^test\" 〇c:\^test\ 〇c:\^test\ △出力されず
md "c:\@test\" 〇c:\@test\ 〇c:\@test\
md "c:\[test\" 〇c:\[test\ 〇c:\[test\ □短名出力
md "c:\;test\" 〇c:\;test\ 〇c:\;test\ ×処理停止
md "c:\:test\" ×
md "c:\]test\" 〇c:\]test\ 〇c:\]test\ □短名出力
md "c:\,test\" 〇c:\,test\ 〇c:\,test\ □短名出力
md "c:\.test\" 〇c:\.test\ 〇c:\.test\ □短名出力
md "c:\/test\" ×c:\test ※コマンドは実行できるが/は消える
md "c:\\test\" ×c:\test ※コマンドは実行できるが\は消える

以上より、
使える記号12
#$&'(~`{}_-@
一応使える記号7。※先頭半角スペース
 =+[],.
※エラー使うな記号15
"·!%)|*<>?^;:/

0 件のコメント:

コメントを投稿