Pliki wsadowe/Windows: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
m Revert
Znacznik: Edytor kodu źródłowego 2017
Linia 59:
* <code>if [not] [exist] cos==cos komenda</code> - jeżeli coś równa się czemuś wykonaj komendę. Jeżeli użyte jest <tt>not</tt>, stanie się przeciwieństwo - jeżeli coś '''nie''' równa się czemuś wykonaj komendę. Jeżeli użyte jest <tt>exist</tt>, zamiast zwykłego sprawdzenia warunku sprawdzane jest istnienie danego pliku (w przykładzie w poprzednim rozdziale).
* <code>start</code> - wykonanie jakiegoś programu w osobnym oknie.
* <code>call</code> - odmiana komendy start służąca do uruchomienia jakiegoś pliku wsadowego w tym samym oknie. Może służyć do podzielenia skomplikowanego programu na mniejsze części (tutaj niewykorzystana)u do etykiety wyjscieprogramsiękończy, jeżeli <code>t</code> program wraca do początku i ponownie wyświetla polecane strony.
 
Wykorzystanie instrukcji warunkowych w celu znalezienia pliku.
<source lang="dos">
if exist c:\moje\zm.txt goto 1
if not exist c:\moje\zm.txt goto 2
:1
echo Znaleziono plik.
pause >nul
exit
:2
echo Nie znaleziono pliku.
pause >nul
exit
</source>
 
== Etykiety ==
Etykieta to narzędzie pozwalające na "skakanie" po kodzie. Wykorzystamy je do ''zapętlenia'' powyższego programu - pytanie o numer strony będzie się pojawiać dopóki, dopóty nie poda się jako numer strony litery q (od ''quit''). Kod:
 
<source lang="dos">
@echo off
echo POLECANE STRONY INTERNETOWE
:tekst
cls
echo [1] - Wikibooks
echo [2] - Wikipedia
echo [3] - Pliki wsadowe w Wikibooks
echo [4] - Pliki wsadowe w Wikipedii
:zapytanie
set /p odp=Podaj numer strony do uruchomienia (q aby wyjść, t aby powtórzyć strony)?
if %odp%=="q" goto wyjscie
if %odp%=="t" goto tekst
if %odp%=="1" start "iexplore.exe http://pl.wikibooks.org"
if %odp%=="2" start "iexplore.exe http://pl.wikipedia.org"
if %odp%=="3" start "iexplore.exe http://pl.wikibooks.org/Pliki_wsadowe"
if %odp%=="4" start "iexplore.exe http://pl.wikipedia.org/Program_wsadowy"
if not %odp%=="q" goto tekst
if not %odp%=="t" goto tekst
if not %odp%=="1" goto tekst
if not %odp%=="2" goto tekst
if not %odp%=="3" goto tekst
if not %odp%=="4" goto tekst
goto zapytanie
:wyjscie
</source>
Zadeklarowaliśmy sobie trzy etykiety (zaznaczone na żółto). Instrukcja goto służy do "skakania" między nimi. Po sprawdzeniu argumentu program wraca się do etykiety zapytanie. Jeżeli argumentem było <code>q</code> program idzie od razu do etykiety wyjscie - program się kończy, jeżeli <code>t</code> program wraca do początku i ponownie wyświetla polecane strony.
 
==Komentarze==
Linia 119 ⟶ 74:
==Zapisywanie danych do pliku==
Zapisywanie danych do pliku tekstowego odbywa się za pomocą symbolu > lub >> .
Oto dwa przypadki:
 
<source lang="dos">
rem Przypadek 1
set /a m=2
echo %m% >>zm.txt
pause >>nul
 
rem Przypadek 2
set /a m=2
echo %m% >zm.txt
pause >>nul
 
</source>
W przypadku pierwszym komenda set /a przyporządkowała zmiennej m cyfrę 2 a symbol >> dopisał zmienną do pliku zm.txt lub utworzył nowy gdyby nie było zm.txt.