[win / batch] zamykanie okna po operacji

0

Problem jest dość złożony, ale stosunkowo krótki.

Załóżmy, że mamy do wykonania czasochłonną operację w konsoli windowsa, niech będzie to dodanie projektu do repozytorium svn. Najprostszą metodą jest:

echo off
svn import abc svn://localhost/
exit

tyle tylko, że o ile polecenie svn import wykonuje się bez zastrzeżeń to exit jest już ignorowany? Czy istnieje jakaś metoda by tak nie było? Podpowiem, że start /w nie zadziała, bo chodzi o to żeby zamknąć okno po wykonaniu skryptu.

Google nie wniósł nic rzeczowego niestety :(

0

A jak wywolujesz tego batcha? I jaki to Windows, bo u mnie na Win XP Pro exit dziala jak trzeba.

0

Cały skrypt wygląda "normalnie". Tyle tylko że składa się z kilku czasochłonnych poleceń, które powinny być wykonywane po sobie. Tak sobie myślę czy nie dało by się tego zrobić jakoś tak (odtwarzam z głowy bo siedzę na linuxie):

echo off

if "%3"=="maven" goto maven
if "%3"=="svn_c" goto svn_c
if "%3"=="svn_i" goto svn_i
if "%3"=="svn_cp" goto svn_cp

:start
start /w mvn2svn.bat %1 %2 maven
goto :end

:maven
mvn archetrype:create -DartifactId=%1 -DgroupId=test.%1
start /w mvn2svn.bat %1 %2 svn_c
exit

:svn_c
mkdir tmp/%1/trunk
mkdir tmp/%1/branches
mkdir tmp/%1/tags
cd tmp
svn import %1 %2/%1 -m "repository struct import"
cd ..
rd /q/s tmp
start /w mvn2svn.bat %1 %2 svn_i
exit

:svn_i
svn import %1 %2/%1/trunk -m "initial project import"
start /w mvn2svn.bat %1 %2 svn_cp
exit

:svn_cp
rd /q/s %1
svn checkout %2/%1/trunk %1
exit

:end

próba połączenia z svnem następuje jeszcze w trakcie działania mavena... hm...

0

Jakoś poszło. Nie do końca tak jak trzeba, ale zawsze :)
Pełen opis co i jak:
http://koziolekweb.blogspot.com/2008/01/vn-czyli-gdy-komend-jest-duo.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1