回答編集履歴

1

改善策を思いついたので追加します。参考にしてください。

2015/11/06 11:28

投稿

catsforepaw
catsforepaw

スコア5938

test CHANGED
@@ -29,3 +29,41 @@
29
29
  引数にファイル名を指定して実行すると、結果を標準出力に出力します。
30
30
 
31
31
  とりあえず「入力ファイルの内容」を渡して「下記の形式のファイル」が出力されたことは確認しましたが、ファイルパスに"="が混ざっているとうまく動きません。いろんなパターンに対応させるにはさらに工夫が必要です。
32
+
33
+
34
+
35
+ ★改良版
36
+
37
+ ```ここに言語を入力
38
+
39
+ @echo off
40
+
41
+ setlocal
42
+
43
+
44
+
45
+ for /F "eol=#" %%A in (%1) do call :procline "%%A"
46
+
47
+ goto :eof
48
+
49
+
50
+
51
+ :procline
52
+
53
+ set LINE=%~1
54
+
55
+ if "%LINE:~0,3%" == "id=" set ID=%LINE:~3%
56
+
57
+ if "%LINE:~0,5%" == "file=" call :output %ID% "%LINE:~5%"
58
+
59
+ goto :eof
60
+
61
+
62
+
63
+ :output
64
+
65
+ echo %1,%~nx2
66
+
67
+ ```
68
+
69
+ 環境変数の参照で文字数指定ができることを思い出しました。こっちの方が問題は少ないかと思います。