VBScriptでファイル、フォルダを正規表現を使って振り分ける

以前UWSCキーワードにマッチしたファイル、フォルダを振り分けるを書いたけど、そのVBScript版を書いた。
UWSCはキーワードにワイルドカードを使ってファイル、フォルダの数を検索できるけれど
WSHだと出来なさそうなので、面倒くさいけど正規表現でやった。
その代わり、UWSCの方はまとめて移動させていたので、移動先に一つでも同名のものがあると
そのキーワードでの移動はしないで次に移っていたけれど
こっちはキーワードで個別にチェックするので、移動先に同名ファイル、フォルダがあっても
終了せずにそのまま移動を続けるという良い意味での副作用があった。
UWSCのと同様、移動先が存在しない場合は勝手にフォルダを作成。

設定ファイルの内容はUWSC版と一緒で
キーワード[カンマ]移動元パス[カンマ]移動先パス
正規表現に詳しくないので、簡単な例しか挙げられないけど
頭にaが付くテキストファイルをaaaからbbbに移動。
名前にbbを含んでいるdatファイルをcccからdddに移動の場合

^a.*\.txt,C:\aaa,C:bbb
bb.*\.dat,C:\ccc,C:\ddd

設定ファイルの名前、拡張子は適当に(拡張子は無くても構わない)
その設定ファイルを、下記のvbsファイルがあるディレクトリに
"user"というフォルダを作成して、その中に置く。(名前を変更する場合は2行目の"user"を変更)


パラメータにそのファイル名をつけて下記のvbsファイルを起動すると
そのファイルの設定で振り分けを開始。
パラメータが無い場合は設定ファイルを選択するダイアログが出るから、それで設定ファイルを選択。


注意する点
拡張子を指定しないキーワードの場合、マッチしていたらファイルもフォルダも見境なく振り分ける。
5、6回しかテストしてないので何が起こるかわからない。

08/11/02 更新

JScriptで書き直しました、拡張子はjsです。使い方や設定方法はVBScriptと一緒ですが
こっちは正規表現でなくワイルドカード(*)と?で設定します(やっぱややこしいからw)
VBScritpと違って設定はタブスペースで区切ります。

*.jpg[tabスペース]移動元パス[tabスペース]移動先パス
*.*[tabスペース]移動元パス[tabスペース]移動先パス

のようによくある方法。



08/11/08 修正

  • 設定ファイルはタブスペースで区切るようにした。

08/11/09 修正

  • 余計なコードを消し忘れて無意味なことしてた。