以下のバッチスクリプトがあります。テキスト ファイルの各行の最初の文字を読み取る必要があります。それはa to zで、対応するフォルダにサブフォルダを作るべきです。「_other」フォルダに作成する必要があります。
だから私はリストを持っている場合:
123test
aaatest
bbbtest
以下を作成する必要があります。
c:\dirs\_other\123test
c:\dirs\a\aaatest
c:\dirs\b\bbbtest
しかし、何らかの理由で最後の if/else が機能しません。なぜだめですか?これはスクリプトです:
setlocal EnableDelayedExpansion
set file=c:\klantenlijst.txt
FOR /F "delims=~" %%i IN (!file!) DO (
set var=%%i
set str=!var:~0,1!
IF !str!==A ( set letter=1 )
IF !str!==B ( set letter=1 )
IF !str!==C ( set letter=1 )
IF !str!==D ( set letter=1 )
IF !str!==E ( set letter=1 )
IF !str!==F ( set letter=1 )
IF !str!==G ( set letter=1 )
IF !str!==H ( set letter=1 )
IF !str!==I ( set letter=1 )
IF !str!==J ( set letter=1 )
IF !str!==K ( set letter=1 )
IF !str!==L ( set letter=1 )
IF !str!==M ( set letter=1 )
IF !str!==N ( set letter=1 )
IF !str!==O ( set letter=1 )
IF !str!==P ( set letter=1 )
IF !str!==Q ( set letter=1 )
IF !str!==R ( set letter=1 )
IF !str!==S ( set letter=1 )
IF !str!==T ( set letter=1 )
IF !str!==U ( set letter=1 )
IF !str!==V ( set letter=1 )
IF !str!==W ( set letter=1 )
IF !str!==X ( set letter=1 )
IF !str!==Y ( set letter=1 )
IF !str!==Z ( set letter=1 )
IF !letter!==1 ( md c:\Dirs\!str!\!var! ) ELSE ( md c:\Dirs\_Other\!var! )
)