• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フォルダ振り分け)

特定のフォルダに作成されるフォルダを別のフォルダに移動する方法についての質問

このQ&Aのポイント
  • ユーザが利用するソフトで特定のフォルダに「xxxログインIDyymmddhhmmss」or「yyyログインIDyymmddhhmmss」でフォルダが作成されていく仕組みがあります。この作成されるフォルダをさらに別のフォルダに移動する仕組みが作れないかどなたか知恵を貸してください。
  • フォルダの振り分けを行うソフトを探しましたが、希望に沿うものが見つかりませんでした。したがって、自分で作成するか改造する必要があるようです。
  • 作成されたフォルダのうち、特定の条件を満たすものを別のサーバに移動する方法についても助言が欲しいと思っています。可能ならば、BATファイルを使って監視できるようにしたいと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

どうやら、WSHのFileSystemObjectを使ったフォルダのコピー・移動・削除のコマンドには、ワイルドカード指定が可能なようでした。 (前の回答で書いたURLと一緒) http://www.atmarkit.co.jp/fwin2k/operation/wsh11/wsh11_01.html で、MoveFolderコマンドで試すと、送り元のフォルダが消せないとエラーが出たので、CopyFolderで転送先へコピーし、DeleteFolderでコピー元を削除すれば大丈夫でした。 スクリプトは転送元のコンピュータで定期的に(XPでもタスクスケジュールが設定可能)実行させれば良いかと。 (参考) http://www.atmarkit.co.jp/fwin2k/win2ktips/335tasksched/tasksched.html ただし、スクリプトでコピーの正常性の確認なしで元フォルダを削除していますので、自己責任で行ってください。 ファイルが消失したりしても、私は責任は負えませんので、あしからず。 -(サンプル:ココから)--------------------------------------- ' ファイル操作用のオブジェクト変数 Dim objFSO ' ファイル操作用オブジェクトの生成 Set objFSO = WScript.CreateObject( "Scripting.FileSystemObject" ) ' フォルダの移動 ( 移動元フォルダ名にワイルドカードが使えるようです ) objFSO.CopyFolder "C:\Test\Log\yyyLoginID*" , "\\192.168.1.10\SHARE\" objFSO.DeleteFolder "C:\Test\Log\yyyLoginID*" ' 変数の破棄 Set objFSO = Nothing -(サンプル:ココまで)---------------------------------------

shapecat02
質問者

お礼

レス遅れてすいません。なんとか苦労しつつも 希望の操作が出来るようになりました。 有難うございました。

その他の回答 (1)

回答No.1

フォルダ名にワイルドカードが指定できれば、yyyLoginID*で記述できるのですが、難しいですね。。 xxxのユーザ分も含めてserverBへ定期的なバッチ処理でコピーしても良ければ、Windowsのタスクスケジュールでバッチファイルを定期的に実行すれば可能かと思います。 XPでは標準でできませんが、copyコマンドの優秀版でrobocopyというコマンドがあります。 送り先のサーバの共有フォルダへコピーするのですが、更新や追加のあった差分ファイルだけ転送する賢いコマンドです。 http://www.atmarkit.co.jp/fwin2k/win2ktips/877robomir/robomir.html WSHを使えば、フォルダ一覧とか取得できるので、やりたいことを実現するのは不可能ではないかと思います。 http://www.atmarkit.co.jp/fwin2k/operation/wsh11/wsh11_01.html

shapecat02
質問者

お礼

レス有難うございます。 もともとある \\severA\output\yyyLoginIDyymmddhhmmss フォルダをコピーしてしまうとデータがたまりすぎて 出来る事なら移動が理想です。が! なんせ急ぎでの対応が必要のためデータは後から手で消す、 もしくは、ALL削除BATでもタスクに仕掛けておくなど 出来ると思うので、フロー的な資料作っていきたいと 思います。アドバイス有難うございました。 ちなみに「~~~xxx~~~」はユーザが使い終わったら消す事に なっています。

関連するQ&A

専門家に質問してみよう