コード罰金新しい宛先に共通のテキストをコピーし、それらのフォルダの内容をすべての特定のビットを持っているディレクトリ内のすべてのフォルダのこの行の「XCOPY」。使用して「移動」コマンドの代わりに、ループ
dir /b /s /a:d "\\SERVER\Path\Directory\*FolderTag" | for /f "delims=\; tokens=3,4,5*" %%a in ('findstr FolderTag') do @xcopy /i /s /y "\\SERVER\Path\Directory\%%b\%%c" "E:\%%b\"
これは魅力的です。しかし、ファイルをコピーして元の場所から削除するのではなく、ファイルを移動できるようにしたいと考えています。私は単にmove
とxcopy
を置き換えることはできませんが、私は移動して動作するものにこのループの構造を変換する方法を見つけ出すことはできません。ファイルを削除する別のループを書く方が簡単でしょうか?私はrm
代わりのxcopy
が働くことはないだろうと私はいつもrm
に触れ少し怖いです。
私は、実施例のバッチスクリプトを一緒に入れてみましたが、ループはパス構造にそれほど依存しているので、私はそれを動作させることができませんでした。だから、基本的に私の質問は、このループ内xcopy
の私の実装を中心に展開し、その場所にmove
仕事をできるようにする方法を変更することができます。
'move'はディレクトリに関しては正確に振る舞いませんので、' xcopy'を維持して '&& rm/S/Q"を追加する方が信頼性が高くなります。\\ SERVER \パス\ディレクトリ\ %% B \ %% C "' ... – aschipfl
@aschipflは、だからそれが追加されるだろう直接AF残りのループは? の 'dir/B/S/D: "\\サーバー\パス\ディレクトリ\ * FolderTag" |用/ F "delims = \;トークン= 3,4,5 *" %%で( 'findstrのFolderTag')やる@xcopy/I/S/Y「\\サーバー\パス\ディレクトリ\ %% B \ %% C」 "E:\ %% B \" && RM/S/Q "\\サーバー\パス\ディレクトリ\ %% B \ %% C \ %% D" '? 私はそれにいくつかのエラーを取得していますので、私は尋ねます。 – Neal
また、 'rm'はウィンドウコマンドではありません。その「デル」。 – Neal