回答編集履歴
1
追記
test
CHANGED
@@ -31,4 +31,24 @@
|
|
31
31
|
)
|
32
32
|
)
|
33
33
|
```
|
34
|
+
# 追記
|
35
|
+
階層を1つ見誤っていたので、コードを下記のように訂正しておきます。
|
36
|
+
```CMD
|
37
|
+
setlocal enabledelayedexpansion
|
38
|
+
pushd %~dp0\bat_test
|
39
|
+
for /f "delims=" %%F in ('dir /b /s *.csv') do (
|
40
|
+
set "FN=%%F"
|
41
|
+
set "FN=!FN:%CD%\=!"
|
42
|
+
for /f "delims=\ tokens=1,2,3" %%X in ("!FN!") do (
|
43
|
+
if not exist "..\test_all\%%X" mkdir "..\test_all\%%X"
|
44
|
+
copy "!FN!" "..\test_all\%%X\%%Y%%Z"
|
45
|
+
)
|
46
|
+
)
|
47
|
+
```
|
48
|
+
`~~~\bat_test\test_listA\test_listA202308\datalist01.csv`といいうファイルに対して、
|
49
|
+
%%X ・・・ test_listA
|
50
|
+
%%Y ・・・ test_listA202308
|
51
|
+
%%Z ・・・ datalist01.csv
|
52
|
+
ですね。
|
53
|
+
`bat_test`相当をドロップするなら、最初のところを`pushd %1`にすればその隣に`test_all`が出来ます。
|
34
54
|
|