アプリ版:「スタンプのみでお礼する」機能のリリースについて

DIRでリストを作成して、そのリストにかけて下記のようなbatファイル作ったのですが、リストの中のフォルダ名にスペースがあると「ファイルが見つかりません」の連続出現です。
ちなみにbatはこんな感じです。

REM カレントフォルダの全txtを対象にforループ
echo --------------------------------------------------------
echo バッチファイル実行フォルダ内のlistkabu.txtを参照
echo リスト内のファイルを対象とし
echo リストに無い物は、除外されます
echo 対象にrenコマンドを発行します
echo --------------------------------------------------------
@echo off
set BATDIR=%~dp0
for /F %%i in (%BATDIR%listkabu.txt) do call :sub "%%i"
REM 終わり
exit

REM サブルーチン
:sub
ECHO %1%
set fname=%~nx1
set fname2=%1
set fname=%fname:㈱=(株)%
ren %fname2% "%fname%"
goto :EOF

””で括ってもダメで、
何か良い方法知っている方がいらっしゃいましたら、ご教示ください。

A 回答 (1件)

>for /F %%i in (%BATDIR%listkabu.txt) do call :sub "%%i"



これだと、ファイルから読んだ行を空白で分割して最初のワードを %%i とします。
for /F "delims=" %%i in (%BATDIR%listkabu.txt) do call :sub "%%i"
と、行を分割しないように指定します。
    • good
    • 1
この回答へのお礼

有難う御座いました。
無事回避できました。

お礼日時:2015/04/23 09:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!