- 124 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 21:13:00.51 ]
- 1つ目の方法
titlelist.txtに"C:\test\juu fuku"配下のフォルダを対象に"タイトル" "フォルダ名"書き出し titlelist.txtから"C:\test\juu fuku\該当"の行を削除 ここからループ処理 titlelist.txtから1行目が読み込めなければ終了処理 titlelist.txtから1行目の"タイトル"を読み込んで find /c """タイトル""" "titlelist.txt" 結果が1ならtitlelist.txtから1行目を削除してループに戻る 結果が2以上ならfind """タイトル""" "titlelist.txt"の結果をforで2番目のtoken抜き出して"フォルダ名"を順に取り出し move "C:\test\juu fuku\フォルダ名" "C:\test\juu fuku\該当\フォルダ名" titlelist.txtから"タイトル"の行を削除してループに戻る 2つ目 一度全てのフォルダを"C:\test\juu fuku\該当\タイトル\フォルダ名"とする "C:\test\juu fuku\該当\"でdir /ad /bとかで"タイトル"フォルダ名を forで順に取得してdirで"タイトル"フォルダ配下のフォルダ数を判定 "タイトル"フォルダ以下にフォルダがひとつであれば "C:\test\juu fuku\フォルダ名"へ移動 ふたつ以上ならそのまま 上の処理が終わったら"C:\test\juu fuku\該当\タイトル\フォルダ名"を "C:\test\juu fuku\該当\フォルダ名"へと移動して終了 他にも方法はいくらでもあるだろうけどとりあえずこんなところかな。 2つ目の方が簡単だけどコピーする数増えるしコピーで壊れる確率も増える ベリファイする処理混ぜるとかコピーに>>106が言ってたfirefilecopy使ってベリファイするとかすればいい 自分で無理そうならこちらへ 気軽に「こんなソフトありませんか?」 Part.141 hibari.2ch.net/test/read.cgi/software/1315320625/ ◆こんなソフトウェアつくってください〜Part16〜◆ hibari.2ch.net/test/read.cgi/software/1316551791/
|

|