• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[Erledigt]Batch: Variable nach cmd /k batch.bat leer

G

Gelöschtes Mitglied 36401

Guest
Hallo zusammen,

ich habe auch mal ein Problem: Ich habe mir eine Verknüpfung auf dem Desktop angelegt, als Ziel ist dies angegeben:
Code:
%windir%\system32\cmd.exe /k "c:\utils\workspace.bat"
Die Batch-Datei sieht so aus:
Code:
@echo off
setlocal enabledelayedexpansion
REM Workspaces-Verzeichnis
set workspaces=F:\workspaces
REM Nummerierung
set /a Counter=0
echo ----------------------------------------------------------
for /f "delims=" %%a in ('dir /b /ad "%workspaces%" 2^>nul') do (
    set /A Counter+=1
    echo !Counter! %%~a
)
echo ----------------------------------------------------------
set /p choice=Workspace waehlen:
echo ----------------------------------------------------------
set /a Counter=0
for /f "delims=" %%a in ('dir /b /ad "%workspaces%" 2^>nul') do (
    set /A Counter+=1
    if %choice%==!Counter! set workspace=%%a
)
TITLE %workspace%
Der Fenstertitel wird auch wie gewünscht gesetzt, aber die Variable workspace ist nach dem Beenden des Batch-Files nicht mehr gesetzt. Hat da jemand einen Tipp für mich?

Danke im vorraus
 
Werbung:
Lösung gefunden, falls jemand auch mal braucht:
Code:
@echo off
setlocal enabledelayedexpansion
REM Workspaces-Verzeichnis
set workspaces=F:\workspaces
REM Nummerierung
set /a Counter=0
echo ----------------------------------------------------------
for /f "delims=" %%a in ('dir /b /ad "%workspaces%" 2^>nul') do (
       set /A Counter+=1
       echo !Counter! %%~a
)
echo ----------------------------------------------------------
set /p choice=Workspace waehlen:
echo ----------------------------------------------------------
set /a Counter=0
for /f "delims=" %%a in ('dir /b /ad "%workspaces%" 2^>nul') do (
       set /A Counter+=1
       if %choice%==!Counter! set ws=%%a
)
ENDLOCAL & SET workspace=%ws%
TITLE %workspace%
 
Zurück
Oben