ラベル mklink の投稿を表示しています。 すべての投稿を表示
ラベル mklink の投稿を表示しています。 すべての投稿を表示

2018年1月9日火曜日

ファイル検索リンク作成と動画ファイルの再生・エンコード支援バッチ 「FFJungle」

■ファイル検索リンク作成と動画ファイルの再生・エンコード支援バッチ「FFJungle」
 ダウンロードは⇒「FFJungle Download」
 
出来る事は大きく三つ
 (1)ファイルの検索とリンク作成
  指定した検索パスを、指定条件でフォルダ名やファイル名を検索し、出力先にリンクを作成する。

 (2)音楽・動画のプレイヤーの再生支援 ※再生はWindows設定プレイヤー
  検索リンクが音楽ファイルや動画ファイルの場合、既定のアプリで再生する。※再生は指定時間単位。または停止
  1.連続再生をする。※再生グループの指定とランダム再生可能
  2.再生ファイルの再々生除外。※初期化で元に戻せる
  3.再生ファイルの評価 (1~9段階)
  4.任意の評価グループを連続再生をする。※評価グループの指定とランダム再生可能

 (3)動画ファイルのエンコード支援 ※エンコードはffmpegセット利用
  適切なffmpegファイル(https://ffmpeg.zeranoe.com/builds/)がFFJungle.batと同パスに存在する場合、以下の機能が有効になります。
  1.ファイル時間を参照して再生できる。※指定時間単位も可能
  2.動画ファイルの場合、指定フォーマットでエンコード変換できる。※既定はH.265 ユーザにより変更可能
  3.動画ファイルのエンコード処理を、動画のビットレートを参照して閾値を超えたファイルのみに出来る。
  4.ffplay.exeによる動画再生。


■注意事項
 FFJungle は全てWindows-Dosコマンドのバッチスクリプトで作成しているため、実行には注意しなければならない点があります。
 (1)DOSの管理者モードで動かす必要があります。
 (2)システムドライブのルート指定(例 c:\)はしないでください。
 (3)BAT実行中にDOS窓をクリックすると実行が停止する場合があります。その場合はキー入力すると実行再開します。また裏でOSアップデートなどが行われている場合、動きが非常に遅くなります。
 (4)Windows Dosの制限に縛られるため、一部の記号や特殊文字があると検索しないや動作エラーなどの原因になります。 !%^ハンカク・の半角記号は全角文字か別記号かに置換または削除してください。\/:*?"<>|もだがファイル名に出来ないハズ。
 (5)半角と全角は別名として扱います。それぞれ指定してください。
 (6)バッチ本体及び出力先は必ずローカルドライブ上のパスにしてください。
 (7)著作権ファイルの再生・変換は対応していません。
 (8)標準プレイヤーが多重起動許可している場合、必ず無効にしてください。


■個人的にあると便利なアプリケーション
 (1) 忘れちゃならない『ffmpeg (https://ffmpeg.zeranoe.com/builds/)』(Windowsが32bit版か64bit版を環境に合わせて選択)
 (2) 注意事項(4)を出来るだけ回避するにはFlexibleRenamer (https://hp.vector.co.jp/authors/VA014830/FlexRena/)が便利です。検索対象フォルダの!%^ハンカク・などのファイル名を予め全角に置換しておくと検索エラーの多くを回避できます。
 (3) 再生プレイヤーは、最近はPotPlayer (https://potplayer.daum.net/)を標準で利用しています。著作権保護ファイル以外、ほぼすべての形式を再生してくれて何より軽いのが気に入ってます。
 インストール直後は多重起動が有効の場合は必ず無効にします。それと再生サイズや位置を記憶してくれるよう設定できるので、マルチ画面連続再生とか画面サイズを変えずに再生する事ができます。


■動作確認 OS
  Windows 7 Pro SP1(32bit)
  Windows 10 Pro (64bit)


■ファイル説明
 (1)インストールファイル
  FFJungle.bat バッチ本体
  FFJungle.bau バッチ設定ファイル1(システム設定)

 (2)実行すると出来るファイル
  FFJungle.ini バッチ設定ファイル2(ユーザ設定)
  FFJungle.log バッチ実行ログ
  FFJungle.tmp 実行作業ファイル

 (3)再生支援アプリ ※再生補正やエンコード機能を利用するには必須。
  FFmpegのWindows版(32bit版か64bit版を環境に合わせて選択)をhttps://ffmpeg.zeranoe.com/builds/ より取得。
  圧縮ファイルより3ファイルを取り出す。
   ffmpeg.exe
   ffplay.exe
   ffprobe.exe
  FFJungle.batと同じパスに置く。

 (4)そのうちインストールファイルに追加予定
  Readme.txt  説明ファイル


■インストール
 (1)圧縮ファイルを任意の場所に展開する。※必ずローカルドライブ上のパスに置く。
 (2)FFJungle.batのショートカットを作る。
 (3)作ったFFJungle.batのショートカットに「管理者として実行」権限を付ける。
   右クリックのプロパティの「ショーカット」タブの「詳細設定(D)」ボタンを押して、管理者として実行(R)にチェックを入れて「OK」ボタンを押す。
 (4)同プロパティの「レイアウト」タブのバッファサイズを倍以上、ウインドサイズを大きくする。
  ※バッチを動かした後に環境に応じて調整してください。


■アンインストール
 展開したフォルダごと削除してください。


■使用許諾・免責・配布条件
 (1)本プログラムは、フリーウェアです。また本プログラムは、ソースコードを公開します。
 (2)本プログラムを使用・改変した上で生じたいかなる損害についても、作者は一切の責任を負いません。
 (3)転載、及び配布を行う際においては、事前に作者に連絡してくださると有難いです。
 (4)本プログラム、およびドキュメントの内容は、予告なしに変更できることとします。


■著作権
 著作権は、作者である是々録画が所有します。


■その他
 使用した感想などありましたら下記までお願いします。
 https://zezerokuga.blogspot.jp/


■基本的な流れ 
 デスクトップにフォルダを置いた場合。

起動直後メニューです。管理者モードで実行しています。
何も設定が無いと、出力PATHをFFJungle設置フォルダ、検索PATHをユーザフォルダに設定を追加します。操作はコマンド入力です。項目1~4は改行で移動。項目内の詳細は数字キー指定で移動します。検索実行は\[Enter]です。
上記は
 1.出力PATH FFJ\MV\ に結果リンク作成 (FFJは短名)
 2.検索条件 .mp .wm がパス・ファイル名・拡張子のどこかに含まれてる
 3.検索PATH UPF\  個人フォルダ検索(UPFは短名)
 の設定で実行した結果です。1件ヒットしました。s[Enter]で設定を保続すると"最終更新時間"も保存し、次回検索時に最終更新日時以前のファイルは追加しないようになります。
 コマンド簡易一覧以外の文字列は検索条件と判断し「2.検索条件」の詳細に追加します。直後に\[Enter]して素早い検索の実行が可能です。


■開発までの経緯
 ぶっちゃけ動画の取り扱いが「イロイロメンドクサクなった」に尽きます。動画整理を自分なりに拘ってたら、いつの間にか「時間が足らない」「手が足らない」「HDD容量が足らない」と足らない尽くしに、にっちもさっちもいかなくなってました。取り扱う動画ファイル数や保存先が多くなり、変換に時間が足らなくなり、録画ファイル一時保管のHDDの増設が繰り返され、このままではて小遣いが出てくばかりの悪循環(;´Д`)
 何とかしなければと、仕事の合間にチマチマと作りました。結果は過去イロイロ作ったマクロやスクリプトを整理して一つにまとめたよーなバッチになりました。


■操作マニュアル
 全く出来てません。
  (未)検索設定
  (未)検索実行
  (未)再生支援
  (未)変換手順
  (未)その他
 順次作成してリンクしていく予定ですが、果たしていつになるやら(;´Д`)


■簡易メニュー説明
 FFJungleの操作はキャラクタベースのため、決して快適とは言えません。
 画面に合わせて表示するガイダンスを見て実行してください。

 (1)設定編集
  q 終了 終了します。
  a 追加 指定項目に条件を追加します。
  e 編集 指定条件を編集します。
  d 削除 指定条件を削除(空白化)します。
  s 保存 設定をFFJungle.bauとFFJungle.iniに保存します。
  j 全接 全表示検索条件をリンクします。
  jj 有接 リンクが存在する検索条件のみリンクします。
  h 接外 リンクを外します。
  k KEY 編集ロックフラグON/OFF
  kk ロック 編集ロックON/OFF

 (2)設定移動 ※出力条件設定のみ
  p 出力条件設定の移動〈前〉
  n 出力条件設定の移動〈次〉
  pp 出力条件設定の移動〈先頭〉
  nn 出力条件設定の移動〈末尾〉

 (3)エクスプローラを開く
  o explorer〈出力パス〉
  oo explorer〈検索出力パス〉
  ooo explorer〈感想出力パス〉
  i explorer〈検索パス〉i数

 (4)検索リンク作成など
  \ 〈検索リンク〉差分作成
  \/ 〈検索リンク〉作成
  \\ 〈検索リンク〉差分連続作成
  \\// 〈検索リンク〉連続作成
  \/-- 〈検索リンク〉戻し
  @\-- 〈検索リンク〉再生履歴戻し
  @@-- 〈感想リンク〉再生履歴戻し

 (5)Windows設定アプリで再生
  [ 〈検索リンク〉昇順再生
  ] 〈検索リンク〉降順再生
  [[ 〈感想リンク〉昇順再生
  ]] 〈感想リンク〉降順再生
  @ 〈検索リンク〉ランダム再生
  @[ 〈検索リンク〉検索フォルダランダム昇順再生
  @] 〈検索リンク〉検索フォルダランダム降順再生
  [@ 〈検索リンク〉昇順再生
  ]@ 〈検索リンク〉降順再生
  @@ 〈感想リンク〉ランダム再生
  @[[ 〈感想リンク〉感想フォルダランダム昇順再生
  @]] 〈感想リンク〉感想フォルダランダム降順再生
  [[@ 〈感想リンク〉昇順再生
  ]]@ 〈感想リンク〉降順再生

 (6)プレイヤー時再生メニュー
  Q抜け 再生を中止してトップメニューに戻る。
  S再停 再生終了時に自動で次ファイルを再生するか、ユーザの操作を待つかの切替。
  R共通 リンクを設定1の再生フォルダに移動させる。
  《《1再生》 2焼却 3ゴミ 4放置 5卓上 6収納 7宝箱 8神棚 9天上》 評価1~9移動
  0先頭 同じファイルを最初から再生する。
  P次へ 次ファイルを再生する。
  O開く リンクフォルダを開く
  《F換720 J換900》 再生中ファイルのエンコード変換 ※FFmpeg無しは非表示

 ※(7)(8)はFFmpegがBATと同じパスに無いと動きません。

 (7)ffmpegによるエンコード処理
  / 感想Noファイル概要確認
  // 持出処理〈対象参照〉
  /@ 持出処理〈閾値内コピー〉
  /@@ 持出処理〈全コピー〉
  /@f 持出処理〈閾値内コピー外sd変換〉
  /@j 持出処理〈閾値内コピー外hd変換〉
  /f 持出処理〈閾値外sd変換〉
  /j 持出処理〈閾値外hd変換〉
  /ff  持出処理〈全sd変換〉
  /jj 持出処理〈全hd変換〉

 (8)ffplay再生 メニューは非表示
  - ffplay〈検索リンク〉ランダム再生
  -[ ffplay〈検索リンク〉検索フォルダランダム昇順再生
  -] ffplay〈検索リンク〉検索フォルダランダム降順再生
  [- ffplay〈検索リンク〉昇順再生
  ]- ffplay〈検索リンク〉降順再生
  -- ffplay〈感想リンク〉ランダム再生
  -[[ ffplay〈感想リンク〉感想フォルダランダム昇順再生
  -]] ffplay〈感想リンク〉感想フォルダランダム降順再生
  [[- ffplay〈感想リンク〉昇順再生
  ]]- ffplay〈感想リンク〉降順再生


■引数起動
 起動オプション 第一引数(数字) 指定出力パス条件で検索を連続実行する。
ex. FFJungle.bat 2 2番目の出力パスのリンクする条件で検索を自動実行する。

2017年6月27日火曜日

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

7/3追加:HDDの大量ファイルを利用はするが管理はしない。ファイル活用支援バッチ FileLinkMaker.bat 機能説明2(リンク連続作成:タスクスケジューラによるリンク自動更新処理)

大量ファイルを利用はするが管理はしないFileLinkMaker.bat  旧:大量に貯まったファイルを手軽にユル~く利用するWindows DOSバッチファイル。※設定は緩くないかも( ˘•ω•˘ )機能説明。仕事に影響させたくないんで毎日でもちょっとづつ更新。

Ver.1.3.170710
 ・長名に出来るだけ対応。※完全に対応は出来ていませんorz
 ・FILELINKMAKER USERPROFILE 設定の常駐化(見出しに記述必要) FILELINKMAKER は"FileLinkMaker1.bat"があるフォルダです。 USERPROFILEはOSが用意するユーザ領域で環境変数の USERPROFILE です。今までは設定に記述しても一度書き換えてしまうと元に戻りませんでしたが、見出し設定に記述する事で定義を維持できます。
 ・検索対象外は「1.出力パス」設定のみでしたが、FILELINKMAKERとUSERPROFILE\AppDataはデフォルトで検索対象外。
 ・設定値"半角スペース"または"全角スペース"の設定値は保存しない。

 Ver.r1.2.170705  Ver.1.1.170701 からキー操作をいくつか変えました。呼び出し方がちょっと?変になってたんで。FileLinkMaker1.batと同.iniファイルは差し替える事になります。後、多少ふざけたフォルダ名でも動くように対応。


 Ver.1.1.170701 BAT管理のランダム再生機能(弐型)追加。iniとbat変わってます。
 ランダム再生、シャッフル再生とかいいますが「プレイリストに読み込んだファイルを順不同に再生する機能」です。過去「Winパソコンで動画をランダム(シャッフル)再生しよう! (MPC-HC再生サポート のフロントエンドbatファイルの作成) ※修正個所アリ」なんて恥ずかしいBATを晒していまが、これは動画プレイヤーのMPC-HCに「フィルタ条件込みのフォルダ情報を渡してランダム再生させる」なBATで、この部分はFileLinkMaker1.0.170625の@でのランダム再生と同一です。一度フォルダ情報を渡せば後は非同期にて勝手にランダム再生してくれる。ある意味では楽に実現できた機能でした。
 が、リストとなるフォルダのファイル数が数百数千となると起動直後の読み込みに非常に時間がかかるようになってきました。で、再生するのはその中の一部で、回数を重ねると場合によっては一度再生されて見たファイルも含まれるわけで、コレジャランダム再生じゃねー(# ゚Д゚)と突っ込みながら利用してました。この解決には「一度再生したら(リスト再作成まで)再生できないようにする。それにはスクリプト側でリストと起動の管理をするしかない」と言う訳で、FileLinkMaker1.batに従来のパス渡しは壱型、BAT制御は弐型として実装しました。
 壱型は従来通り"@"起動でMPC-HCかMPC-BEにフィルタ条件込みのフォルダ情報を渡してランダム再生」です。
 弐型は"[" 起動で「フォルダ内のファイルをランダム選択した後に$フォルダに移動してからプレイヤー起動再生して再生終了後にプレイヤーを終了させてBATにタスクを戻して3秒後にBAT再実行」としました。これは一度再生したファイルの除外と次・前移動で未再生の別ファイル再生を防ぐためです。この実現には制限がありまして、再生後に終了オプションを持つプレイヤーでないとダメで、今判明してる実現してくれるプレイヤーはMPC-HCとMPC-BEです。最初はWindowsMediaPlayerでもイケルゾーーーーと興奮してたのですが、12は/Closeオプションが無くなってましたorz。再生後に×で閉じないと先にイカナイ( ノД`)シクシク… あと、BATと同期しないといけないので、実行中は他の機能はツカエマセン。
けどまーこれで一通り考えてた機能が実装できたー。

FileLinkMaker使えばこんな検索できますサンプル

検索パス5 対象ファイル数16385 サイズ計2.09TB
 B:\@MMD\01\ B:\@MMD\05\ B:\@MMD\10\
 B:\@MMD\20\ B:\@MMD\40\

検索文字(12ワード)
 大和 yamato 金剛 kongo 愛宕  atago 鹿島 kashima
 ビスマ bismarck ツェッペ zeppelin

5つの検索パスを 12の検索ワードで検索して、ヒットしたファイルリンクをMMDフォルダに出力。 検索パスの記録媒体はHDDは6TB。MMDフォルダはSSD。
これ以上、静止画はめんどいんで、動作を動画でアップ
719ファイル出来ましたとさ。

 Ver.r1.0.170625 初リリース
 メッセージを変更したFileLinkMaker.iniの入替完了。スライドもキャプと文章修正終り。修正したスライドはリンク先参照。BATはそのままなのでバージョンそのまま。

FileLinkMaker.bat 1.~6.項目説明

  FileLinkMakerのファイル構成
  FileLinkMaker1.bat BAT本体
  FileLinkMaker1.ini システム設定の定義。初回保存時までユーザ設定も保持。

  FileLinkMaker1.txt ユーザ設定の定義。初回保存時以降に作成。
  FileLinkMaker1.log リンク作成時の動作log。

 "FileLinkMaker.ini"に保存している設定は、主にBAT動作に必要な設定と、ユーザに設定を許していない5.6.項目です。1.~4.項目のユーザ設定は"FileLinkMaker.txt"へと保存します。
これは、"FileLinkMaker1設定シンプル.zip" のINIファイルで"FileLinkMaker.bat"を起動してリンク作成した後の画面です。 s[Enter]とするとユーザ設定の"FileLinkMaker.txt"ファイルができます。
 "FileLinkMaker.txt"の中身はこんな感じです。タブ区切りのテキスト文です。
画面の編集機能を利用して設定変更する事もできますが、慣れてくればテキストエディタで直接編集も可能です。ユーザ設定の構造は
 SECTION-ID <tab> GROUP-NO <tab> KEY-NO <tab> 設定値
の繰り返しです。
 画面と"FileLinkMaker.txt"を比較すると"SECTION-ID"は「1.出力パス」はともかく以後の「2.出力アプリ」「3.検索条件」「4.検索パス」は頭の番号が"SECTION-ID"と違うことに気が付くと思います。実は項目は内部はIDで管理です。対して表示はNOで並べています。 蛇足ですが設定二はNO設定ですので、もし今後項目の並び順が変わったら違う値が入ることにります。話を戻します。
 手動で値を追加する場合のそれぞれの番号や値の定義はこんな感じです。
  SECTION-ID は同項目内の番号と同値
  GROUP-NOは同項目内の後ろに追加するなら最大+1を記述。
  KEY-NOは同GROUP-NO内で0からカウントUP
  KEY-NO 0:表題
  KEY-NO 1:必須設定 
  KEY-NO 2 オプション他
 同じ"SECTION-ID GROUP-NO KEY-NO"があると後ろ設定が有効になるので注意してください。画面で適当な値を追加して、エディタで設定しなおすのもいいかもしれません。DOS画面で入力する関係上、使い辛いと思いますしね。ExcelやGoogleスプレッドにコピペで張り付けて編集後、メモ帳に張り付けて保存するとさらにイイカモ。
 とりあえずドキュメント書きはココまでかなー。次はのんびりと機能追加すっか。

2017年6月26日月曜日

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

 以前から思っていたのですが、ファイル管理と言うのは悩みの種でした。
日々いつ視聴や利用する宛てもなくHDD領域を占拠していく把握しきれない録画ファイルや画像・音声のファイル。一つのドライブやパソコンのみならず家庭内LANの共有フォルダに分散したファイル。エクスプローラの検索が上手くいかずイライラしたり遅かったり時間かけて諦めたりorz 整理しようとしたらドライブを超えるためにファイルの移動に時間がかかったり。いざ整理しようとすると下手に整理していつの間にか重複ファイルが出来てたり。偏執的にフォルダを切ったためにファイルの場所が不明になったり。過去録画した番組を再録画してHDDの肥やしになったり、クラウドは遅いし無料なのがないし10TB超えてくるとアップロードの手間だけでも、、、ファイル管理は悩みの種でした(T_T)/~~~
 ファイル数が数万とかになってくると個別に整理なんてする気にもならなくて、もう下手にフォルダ分けとかや~めた。と可能な限りフォルダを切らずに1つのフォルダ階層につまりd:\とかの直下に貯めていたのですがいくらエンコードで小さくして保存しているとはいえ保存ドライブが複数になってくと元の木阿弥orz WindowsがDOSからのファイルシステムを引きずっている関係上、どーしようもないのは解ってるんですけどね。
 と言う訳で、ファイルが分散しても利用する段階で目的に応じてまとめ検索可能ならファイルの管理はテキトーでイインジャネ。それならドライブ追加の度にファイルをまとめるのに四苦八苦する事もないだろうし。容量の少ないドライブを1つにまとめられるならそれに越したことはないんだけどね。んで考えてみた。
 1.可能な限り実ファイルはそのまま。
 2.ファイル・フォルダ名をタグのように扱い検索キーとして使う。
 3.気軽に使える早い検索速度を目指す。
 4.検索は複数ドライブ・複数キーを出来るようにする。排他検索できたら吉。
 5.まとめたファイルを参照できるようにする。
 6.まとめたファイルをプレイヤーなどで再生できるように。ランダム再生。順次再生。
 7.アプリ設定はできるだけINIファイルに。
 8.特殊文字を可能な限り回避するため、中間ファイル作成は可能な限りしない。
 9.大まかに条件をまとめて選択切替可能とする。
こんな感じか。
 どんな手法で実現するか考えてくと、ファイル検索は"Dir"だろーなーこれ以上高速検索するコマンド知らんしこねくりまわしてなんとかしてみるか。
 ファイルへのアクセスは以前使ったシンボリックリンク作成"mklink"ってのが使えるんじゃないかと。シンボリックリンクの特性は見た目ショートカットなんだけど、動画プレイヤーのフォルダ指定でショートカットだと認識しないけどシンボリックリンクだと認識したり、リンク移動や削除はただのラベル移動や削除なんだけど、コピーだと実ファイルを置きにきたり。
 ただし欠点はコマンドの入出力の記述がひたすらメンドイ使い勝手の悪さ。そこいらを自動化できればかなりイイかもと妄想。
 "Dir""mklink"この二つのコマンドが今回のキーかな。そしてアプリの基本スタンスは「複数フォルダから複数条件でファイル・フォルダを高速検索して、条件に合ったファイルのシンボリックリンクを指定フォルダにまとめて作るアプリ」とした。検索ワードで引っ張りだしてとにかくマトメちまえば、後は煮るなる焼くなりどーとでもw
 で、何とか形になって落ち着いたのだが、、、、
 FileLinkMakerは全てWindows10標準DOSのバッチスクリプトです( ゚Д゚)、、、かなりアレなBATスクリプトになってしまったため、もしかすると他バージョンのWindowsだと正常に動かない可能性があります。後、リンク作成時のBATは「管理者として実行」する必要があります。
 前振りはココまでとして、今回のスクリプトはブログに貼り付けでもよかったのですが、BATとINIファイルでかなりの行数になり、貼り付けミスってコードエラーもありえるので、今回はダウンロードして提供する事にしました。
 しかしフルBATだし、俺以外に使う人いるのか?
FileLinkMaker10170625 ダウンロード

FileLinkMakerの動作的な話
FileLinkMaker.bat動作画面
「1~6」を設定する。※5.6.は条件選択。
 設定が終わり実行すると以下のような動作をします。
「5.検索範囲」と「3.出力条件(設定)」で「4.検索パス」を順次検索する。
 ②でヒットしたファイルのシンボリックリンクを「1.出力パス」「3.出力条件(名)」のフォルダに作成する。。
 ②が完了すると「2.出力アプリ」にフォルダ情報を渡してファイルを参照できます。

FileLinkMaker注意点
 検索は単一の文字列しか出来ません。複数キーでの検索、つまりDIRコマンドでのワイルドカード的な検索文字は使えませんというか、使ったら検索してくれません。今後の課題ですね、
 FileLinkMaker実行時DOSファイル規約の縛りをそのまま受けます。特に特殊文字や\/:*?<>|! % ; ハンカクテンなどが設定値やファイル名に入っていたら異常動作したりファイルが見つからずリンク作成できないフルDOSのBATでつくったためどーしよーもない欠点があり、そーいうファイルを処理したかったら事前に置換または隔離しておく必要があります。
 またファイルの置き場所にスペースや特殊文字が入ってたらダメとか、もー虐めないでとしか言いようがない( ˘•ω•˘ )
  ファイル名の場合は予めファイル名をチェックして置換しておくしか無いでしょう。チェックと置換作業にはFlexible Renamerが具合よかったです。それ以外の特殊文字は実際にやってみないと解らないようなのもあるわけで、そーいうのはDOSコマンド
>md $ && move * $ && for /f "delims=;" %j in ('dir $\*.* /b /s /a-d') do move "%j" .
とか走らせて$フォルダに残ってるのが特殊文字使用ファイルと判断してフルリネームか隔離するしかないかと。
 後、当然ながらフツーのDOSコマンドで作ったため、セキュリティ的に参照不可的な場所にはアクセスできません。

FileLinkMaker簡単な使用方法
※リンクを出力するフォルダはSSDなど高速読み書きできる場所がイイかもしれません。
①リンクからFileLinkMaker10170625.zipFileLinkMaker1設定シンプル.zipをダウンロードしてまともなフォルダ名の同じ場所に展開します。 
ダウンロードファイル
FileLinkMaker1.bat ファイルリンクメーカー本体実行batファイル
  FileLinkMaker1.ini ファイルリンクメーカーシステム設定iniファイル。初回保存時まではユーザ設定も保持している。
②とりあえずクリックして実行(右クリックして「管理者として実行」は後でもいいかと。こんな警告が出たら「詳細情報」をクリックしたら「実行」ボタンが出てくるので実行する。気になるならファイル上右クリック「編集」でメモ帳で一度ファイルを開いて「上書き保存」してください。以後出なくなります。
 実行するとこんな画面が出てきます。
「1.出力パス」や「4.検索パス」のパス名は、ログイン名によって変わってくるはずです。一度保存すると情報が確定するので固定されます。
画面上部が項目を、真ん中が詳細、下が操作を表示してます。
 [Enter]を押すと項目のマークが下に移動し、連動してて画面が切り替わっていきます。[Enter]を高速連打すると異常動作する可能性があるので注意してください。
 保存 s [Enter] してください。FileLinkMaker1.bat と FileLinkMaker1.ini のフォルダに ユーザ設定を保存するFileLinkMaker1.txt が追加されます。FileLinkMaker1.txtやシンボリックリンクの他にFileLinkMaker1が作るファイルはシンボリックリンク作成時のログを保存するFileLinkMaker1.logがあります。
 終了x[Enter]で終了します。FileLinkMaker1.txt を見ると現在のユーザ設定を見る事ができ、慣れたら直接編集とかも可能です。
 FileLinkMaker1.iniは触らないでください。触る場合はFileLinkMaker1.batを十分理解して自己責任でお願いします。
 ※「2.出力アプリ」で設定されてるMassiGraは、高速画像ビュワで画像のあるフォルダを渡せばその中身を高速で表示してくれる優れものフリーソフトです。【DL】

 今度は「管理者として実行」してください。「1.出力パス」「3.検索条件」「4.検索パス」を上記画面設定にしてください。
 数字[Enter]で〇が詳細の指定No.に移動します。
「5.検索範囲」は2か3にしてファイルが入るようにしてください。
 設定が上記画面設定のままなら
 「4.検索パス」 C:\Users\zen\  ※ただし「1.出力パス」1,2,3 を除く
 「5.検索範囲」フォルダとファイル
 「3.検索条件」.jpg .jpe .bmp .png .pdf
 を検索キーとして合致したファイルを
  C:\Users\zen\ファイルリンク\写真\ ※「1.出力パス」「5.検索範囲名」\
 に出力します。
 個人フォルダに意図せず散逸した写真をフォルダ一つで参照できるようにします。
 確認したら ¥[Enter]で処理を開始します。
実行後は画面が多少変化します。3.検索条件:.162は作成したファイルリンク数です。ここで画像ビュワを登録していると @[Enter]で参照できますが、なければp[Enter]してください。Explorerが[1.出力パス]を参照して立ち上がります。
 以上、FileLinkMakerの簡易操作説明でした。以後、詳しい機能説明はページを改めて追加していきたいと思います。まー基本はメニュー見つつ操作していってくれたらいいかも。サンプルのINIも参考にしてください。では(T_T)/~~~