1

各フォルダの名前を(ループ内で)2つの部分に分割したいfor:左側の部分(区切り記号「 - 」の前)と右側の部分(区切り記号の後)。

例:「Bonjour - Cher ami」 => 左=Bonjour、右=Cher Ami

しかし、うまくいきません:

for /d %%a in (*) do (
  set "fname=%%a" 
  set "right=%fname:* - =%" 
  call set "left=%%fname: - %right%=%%" 
  echo [%left%] * [%right%]
)

前もって感謝します

4

1 に答える 1

1

コード ブロック内では、別の構文が必要です。

@echo off &setlocal
for /d %%a in (*) do (
    set "fname=%%~a"
    call set "right=%%fname:* - =%%" 
    call call set "left=%%%%fname: - %%right%%=%%%%"
    call echo [%%left%%] * [%%right%%]
)

フォルダ名に「 」がない場合は-、%left%==%right%.

于 2013-03-28T23:24:22.967 に答える