Batch-Datei: Sortieren von Ordnern und Dateien alphabetisch

Die batch-Datei rekursiv echos Dateien und Ordner beim hinzufügen einige einfache Formatierungen wie Einrückungen zeigen die Rekursionstiefe, hinzufügen "/" vor dem Ordner-Namen, "*", bevor Sie bestimmte Dateien und überspringen Ordner namens "Archiv". Es funktioniert Super, außer, dass die Dateien und Ordner werden zufällig sortiert, anstatt alphabetisch. Wie könnte das geändert werden, um zu Sortieren, Dateien und Ordner alphabetisch?

@echo off
setlocal disableDelayedExpansion
pushd %1
set "tab=   "
set "indent="
call :run
exit /b

:run

REM echo the root folder name
for %%F in (.) do echo %%~fF
echo ------------------------------------------------------------------

set "folderBullet=\"
set "fileBullet=*"

:listFolder
setlocal

REM echo the files in the folder
for %%F in (*.txt *.pdf *.doc* *.xls*) do echo %indent%%fileBullet% %%F  -  %%~tF

REM loop through the folders
for /d %%F in (*) do (

  REM skip "Archive" folder
  if /i not "%%F"=="Archive" (

  REM if in "Issued" folder change the file bullet
  if /i "%%F"=="Issued" set "fileBullet= "

  echo %indent%%folderBullet% %%F
  pushd "%%F"
  set "indent=%indent%%tab%"
  call :listFolder

  REM if leaving "Issued folder change fileBullet
  if /i "%%F"=="Issued" set "fileBullet=*"

  popd
))
exit /b
InformationsquelleAutor buttonsrtoys | 2013-02-20
Schreibe einen Kommentar