Hallo ninon, willkommen im Forum.
Die Liste, welche durch einen der %L -Parameter erzeugt wird, muss dann innerhalb der Batch in einer Schleife abgearbeitet werden.
Dies kann durch eine beliebige Skriptsprache erledigt werden (MS-DOS Batch, JS, PowerShell, AutoHotkey,...)
Davon gibt es bereits einige Beispiele im Forum...
Hier mal eine Batch für einfache Sachen, da du ebenfalls mit einer Batch angefangen hast (heutzutage wäre posh die bessere Wahl):
ForEachFileFrom_L_Do.cmd
Code: Select all
@ECHO OFF
REM Batch script "For_Each_Selected_File_Do.cmd" by Stefan, 2017-07-24, v0.01
REM
REM Use from a Total Commander Button:
REM Command: "D:\rive\path to this\batch.cmd"
REM Parameter: "%L" (((see TC help for more)))
REM Start path:
REM Icon file: cmd.exe (((or wcmicons.dll)))
REM
REM Usage: select a few files and execute the button.
REM
REM
REM THE CODE
ECHO Found TC's %%L-temp file: %1
ECHO Start reading the temp file... and do something for each file:
ECHO ******************************************
for /f "delims=" %%L in ('type %1') do (
REM For Each Line (=File) in temp file DO:
REM (modify this part for your task)
ECHO Processing "%%L"
ECHO Drive: %%~dL
ECHO PATH: %%~dpL
ECHO NAME: %%~nxL
ECHO BASE: %%~nL
ECHO EXTe: %%~xL
ECHO File %%~nxL done. Go to next...
ECHO ******************************************
)
ECHO.
ECHO All Done!
PAUSE
Die Batch kann schon bei Umlauten Probleme machen, und man muss ein CHCP Befehl einbauen.
chcp 1252
chcp 65001
Für Infos über die Parameter des TCs, klicke mit rechts auf einen Button und wähle "Ändern", dann rufe dort die Hilfe auf.