- 【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
34 :デフォルトの名無しさん[sage]:2015/03/26(木) 14:29:43.73 ID:eQva/kB3 - >>33
● 空白が連続して並んでいる場合、空白1個とみなす、また改行だけの行は削除 (ファイル名がどんな場合でも必要ならbatは諦めてWSHでも使ってくれ) @echo off type nul>filelist.tmp for /f "tokens=*" %%i in (filelist) do call :sub %%i del filelist move /y filelist.tmp filelist goto :eof :sub if "%1" equ "" goto :eof echo.%1>>filelist.tmp shift goto :sub ● 別の方法:空白1つずつを改行に変換(トリッキーだけど) @echo off setlocal EnableDelayedExpansion set LF=^ type nul>filelist.tmp for /f "tokens=*" %%i in (filelist) do ( set d0=%%i call :sub echo !d1!>>filelist.tmp ) del filelist move /y filelist.tmp filelist goto :eof :sub set d1=%d0: =!LF!% goto :eof
|
|