回答編集履歴

4

回答修正

2019/12/06 06:55

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -68,15 +68,25 @@
68
68
 
69
69
 
70
70
 
71
+ ※この2行を見落としてたので修正しました。
72
+
73
+ `C:\Users\Desktop\任意フォルダ\test.txt` これはsample.txtの事?
74
+
75
+ `C:\Users\Desktop\フォルダ1\test.bat`
76
+
77
+
78
+
71
79
  ```CMD
72
80
 
73
81
  @echo off
74
82
 
75
-
83
+ set batdir=%~dp0
76
84
 
77
- for /f %%a in (sample.txt) do (
78
85
 
86
+
79
- copy /Y %%a ..\任意フォルダ.
87
+ for /f %%a in ("C:\Users\Desktop\任意フォルダ\test.txt") do (
88
+
89
+ copy /Y "%batdir%..\フォルダ1\%%a" "C:\Users\Desktop\任意フォルダ."
80
90
 
81
91
  )
82
92
 

3

誤記修正

2019/12/06 06:55

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,4 +1,6 @@
1
1
  > このままだとファイルが大量にあるフォルダ内に置いておかなきゃできませんよね....?
2
+
3
+
2
4
 
3
5
  そんな要件質問になかったです。
4
6
 

2

追記

2019/12/06 06:48

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,3 +1,67 @@
1
+ > このままだとファイルが大量にあるフォルダ内に置いておかなきゃできませんよね....?
2
+
3
+ そんな要件質問になかったです。
4
+
5
+
6
+
7
+ > フォルダを指定して、その指定したフォルダAの中から ほかのフォルダBに移動したい場合はどうしたらいいのかわからなくて... 
8
+
9
+
10
+
11
+ それぞれフルパスで指定するだけですよね?
12
+
13
+
14
+
15
+ ```CMD
16
+
17
+ @echo off
18
+
19
+
20
+
21
+ for /f %%a in ("C:\Users\Desktop\任意フォルダ\test.txt") do (
22
+
23
+ copy /Y "C:\Users\Desktop\フォルダA\%%a" "C:\Users\Desktop\フォルダB."
24
+
25
+ )
26
+
27
+ ```
28
+
29
+
30
+
31
+ または、コマンドラインパラメーターで指定すればいいです。
32
+
33
+ `movefile.cmd "C:\Users\Desktop\フォルダA" "C:\Users\Desktop\フォルダB" "C:\Users\Desktop\任意フォルダ\sample.txt"`
34
+
35
+
36
+
37
+ ```CMD
38
+
39
+ REM movefile.cmd
40
+
41
+ @echo off
42
+
43
+ set FROM_FLD=%1
44
+
45
+ set TO_FLD=%2
46
+
47
+ set PATTERN_TXT=%3
48
+
49
+
50
+
51
+ for /f %%a in ("%PATTERN_TXT%") do (
52
+
53
+ copy /Y "%FROM_FLD%\%%a" "%TO_FLD%."
54
+
55
+ )
56
+
57
+ ```
58
+
59
+
60
+
61
+ ---
62
+
63
+
64
+
1
65
  以下でどうでしょう。
2
66
 
3
67
 

1

回答修正:moveじゃなくてcopyだった :-|

2019/12/06 06:48

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  for /f %%a in (sample.txt) do (
12
12
 
13
- move %%a ..\任意フォルダ.
13
+ copy /Y %%a ..\任意フォルダ.
14
14
 
15
15
  )
16
16