XP/Vista/7 で動作する必要があります。バッチ、VBS、または言及された O/Ses を持つすべての人が実行できるもの (PE を除く) を使用できます。
15 個のランダムなファイルと、同様の名前のフォルダー (別の場所にあります) を選択し、同時にそれらを独自のフォルダーにコピーする必要があります。
私はグーグルや robvanderwoude.com のようなウェブサイトを精査し、いくつかの近い例を見つけましたが、経験が浅すぎて、斜視にならずに必要なものに例を適応させることができません. 誰かが私を正しい方向(最も効率的/最も簡単に使用できる方法)に向けることができれば幸いです.
レイアウトの説明:
30 files:
%~dp0\mod\store\XMLs -> %~dp0\mod\0.1.2\map\data
map01_aaa.xml
map02_bbb.xml
map03_ccc.xml
...
map60_zzz.xml
30 folders:
%~dp0\mod\store\models -> %~dp0\mod\0.1.2\sky\stuff
01_aaa_map
02_bbb_map
03_ccc_map
...
60_zzz_map
以下のコードは、これを採用しようとしているものですが、15 個のファイル/フォルダーのみを順番に選択します。SrcMax の方程式で %random% 環境変数を使用しようとしましたが、ランダムな量のファイルが選択され、常に最初のファイルから開始されます。
(古いコード)
rem @ECHO OFF
setlocal ENABLEDELAYEDEXPANSION ENABLEEXTENSIONS
SET SrcCount=0
SET SrcMax=15
FOR %%F IN (%~dp0\mod\store\XMLs\*.*) DO IF !SrcCount! LSS %SrcMax% (
SET /A SrcCount += 1
ECHO !SrcCount! COPY %%F %~dp0\mod\0.1.2\map\data\
COPY %%F %~dp0\mod\0.1.2\map\data\
SET FNAME=%%~nF
ECHO XCOPY /s "%~dp0\mod\store\Models\!FNAME:~3!_map" "%~dp0\mod\0.1.2\sky\stuff\!FNAME:~3!_map\"
XCOPY /s "%~dp0\mod\store\Models\!FNAME:~3!_map" "%~dp0\mod\0.1.2\sky\stuff\!FNAME:~3!_map\"
)