私がこれまでに書いたソース コードの中で最悪の部分と比較すると、これは間違いなくトップ 3 の下にあります。
ただし、ほぼすべての可能なバッチ初心者の間違いを行った後、以下のコードは最終的に必要なことを行います (コードに記載されている制限を考慮して)。
事前定義されたルート フォルダーの下にあるすべてのフォルダーとファイルをクロークしますmyServerFolder
。myServerFolder
最後のスラッシュを含む次の構文が必要です: $/myProject/myFolder/
.
誰かがコードを単純化する良いアイデアを持っている場合、またはバグを見つけた場合は、直接編集するか、私に知らせてください。
改めまして、ご声援ありがとうございました!
@echo off
setlocal enabledelayedexpansion
REM Limitation: Folder and file names must not end with ")" nor start with "$"
set myServerFolder=$/myProject/myFolder/
REM Process Folders
for /f "Tokens=*" %%a in ('tf.exe dir %myServerFolder%') do (SET TEXT=%%a& SET SUBSTR_A=!TEXT:~-1!& SET SUBSTR_B=!TEXT:~0,1!& (IF "!SUBSTR_A!" NEQ ":" IF "!SUBSTR_A!" NEQ ")" (IF "!SUBSTR_B!" EQU "$" (set currParam=!TEXT:~1!&(tf.exe workfold /cloak "%myServerFolder%%!currParam!")))))
REM Process Files
for /f "Tokens=*" %%a in ('tf.exe dir %myServerFolder%') do (SET TEXT=%%a& SET SUBSTR_A=!TEXT:~-1!& SET SUBSTR_B=!TEXT:~0,1!& (IF "!SUBSTR_A!" NEQ ":" IF "!SUBSTR_A!" NEQ ")" (IF "!SUBSTR_B!" NEQ "$" (set currParam=!TEXT!&(tf.exe workfold /cloak "%myServerFolder%%!currParam!")))))
PAUSE