Pliki wsadowe: jak pozostawić otwarte okno konsoli
Mam dwa pliki wsadowe, jeden z nich wykonuje drugi, tzn.
- "Mój Plik Wsadowy" > 2. "Jakiś Inny Plik Wsadowy"
Utworzyłem Skrót pierwszego pliku wsadowego i edytowałem jego właściwości, aby wywołać go w następujący sposób.
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
Co chcę zrobić Chcę, aby okno konsoli było otwarte po zakończeniu wykonywania pliku wsadowego. Teraz po prostu się zamyka, próbował bawić się flagami cmd, bez rezultatu.
Platforma : Windows7
UPDATE 1
Zmodyfikowano strukturę, prosty przykład jak ten nie działa tak dobrze, Tylko jeden plik wsadowy tzn. nie ma 2. "Inny Plik Wsadowy" Jedyny plik wsadowy zawiera smth w ten sposób
start /B /LOW /WAIT make package
cmd /K
UPDATE 2
Ten sam skrót wywołany z Eksploratora nie zamyka okna konsoli. ale okno konsoli zamyka się, gdy skrót jest wywoływany z przypiętego elementu na pasek zadań
Jakieś pomysły jak utrzymać otwarte okno konsoli?
8 answers
Jeśli to naprawdę wszystko, co robi plik wsadowy, Usuń cmd /K
i dodaj PAUSE
.
start /B /LOW /WAIT make package
PAUSE
Następnie wskaż skrót na "My Batch File.bat"
... nie trzeba go uruchamiać za pomocą CMD /K
.
UPDATE
Jakieś nowe info...próbujesz to zrobić za pomocą przypiętego skrótu na pasku zadań.Znalazłem to, Dodawanie plików wsadowych do paska zadań systemu Windows 7, takich jak szybkie uruchamianie Vista/XP, z odpowiednią częścią poniżej.
- najpierw przypnij Skrót
CMD.EXE
do pasek zadań naciskając przycisk start, a następnie wpisz " cmd "w polu wyszukiwania, kliknij prawym przyciskiem myszy wynik i wybierz "Pin do paska zadań".- kliknij prawym przyciskiem myszy skrót na pasku zadań.
- zobaczysz listę zawierającą " Wiersz polecenia" i " Wypin ten program z paska zadań ".
- kliknij prawym przyciskiem myszy ikonę
CMD.EXE
i wybierzProperties
.- w polu Target, przejdź do końca
"%SystemRoot%\system32\cmd.exe"
i wpisz" /C "
oraz ścieżkę i nazwę z serii plik.
Do swoich celów możesz:
-
Użyj
/C
i umieśćPAUSE
na końcu pliku wsadowego.Lub
- Zmień wiersz poleceń na
/K
i usuńPAUSE
z pliku wsadowego.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-01 01:45:21
Tutaj:
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
Spójrz co robisz:
- (cmd /K) Uruchom nową instancję cmd.
- (&pauza) Pauza bieżąca instancja cmd.
cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-06 22:04:12
Napisałem ostatnią linijkę jako pauza to działało dobrze z obydwoma .bat i .cmd. Wyświetli komunikat również jako "naciśnij dowolny klawisz, aby kontynuować".
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-12 18:37:38
W ostatnim wierszu pliku wsadowego, który chcesz zachować otwarty, umieść
pause >nul
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-06 15:02:00
Aby pozostawić otwarte okno konsoli, wystarczy dodać do ostatniego wiersza poleceń w pliku wsadowym:
' & pause'
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-29 15:48:06
Można po prostu umieścić pause
polecenie w ostatniej linii pliku wsadowego:
@echo off
echo Hey, I'm just doing some work for you.
pause
Da ci coś takiego jako wyjście:
Hej, pracuję dla Ciebie.Naciśnij dowolny klawisz, aby kontynuować ...
Notatka: użycie @ echo uniemożliwia wyjście polecenia przed wydrukowaniem wyjścia.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-31 06:15:08
Umieścić na końcu to ponownie otworzy konsolę
start cmd
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-11 21:35:36
Wciskam enter i wpisuję Pause i działa dobrze
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-03 11:52:23