teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

回答修正

2019/12/06 06:55

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -33,10 +33,15 @@
33
33
 
34
34
  以下でどうでしょう。
35
35
 
36
+ ※この2行を見落としてたので修正しました。
37
+ `C:\Users\Desktop\任意フォルダ\test.txt` これはsample.txtの事?
38
+ `C:\Users\Desktop\フォルダ1\test.bat`
39
+
36
40
  ```CMD
37
41
  @echo off
38
-
42
+ set batdir=%~dp0
43
+
39
- for /f %%a in (sample.txt) do (
44
+ for /f %%a in ("C:\Users\Desktop\任意フォルダ\test.txt") do (
40
- copy /Y %%a ..\任意フォルダ.
45
+ copy /Y "%batdir%..\フォルダ1\%%a" "C:\Users\Desktop\任意フォルダ."
41
46
  )
42
47
  ```

3

誤記修正

2019/12/06 06:55

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -1,4 +1,5 @@
1
1
  > このままだとファイルが大量にあるフォルダ内に置いておかなきゃできませんよね....?
2
+
2
3
  そんな要件質問になかったです。
3
4
 
4
5
  > フォルダを指定して、その指定したフォルダAの中から ほかのフォルダBに移動したい場合はどうしたらいいのかわからなくて... 

2

追記

2019/12/06 06:48

投稿

Y.H.
Y.H.

スコア7918

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

1

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

2019/12/06 06:48

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -4,6 +4,6 @@
4
4
  @echo off
5
5
 
6
6
  for /f %%a in (sample.txt) do (
7
- move %%a ..\任意フォルダ.
7
+ copy /Y %%a ..\任意フォルダ.
8
8
  )
9
9
  ```