[Bath] Odtwarzanie danej etykiety po wpisaniu komendy

Witam, od niedawna zajmuję się robieniem małych programików w bathu, które później podpinam pod inne aplikacje napisane w C++ lub Delphi.

Napotkałem taki problem:

Chciałbym aby po stworzeniu etykiety

:ETYKIETA

komenda

można było wpisać po otwarciu aplikacji “ETYKIETA” i aby odsyłało nas do tej etykiety. Mój przykład

@echo off

echo Witaj w programie, wpisz 1,2,3,4 lub 5 aby wykonać daną czynność

pause >

: 1

start www.dobreprogramy.pl

: 2

ECHO G=FFFF:0 | DEBUG

: 3

echo Jakiś tekst

: 4

echo Inna komenda

: 5

exit program.bat

Wiem, że w kodzie jest kilka błędów, ale chodzi o krótką prezentację mojego pytania.

Chcę, aby po wpisaniu np. 1 odtwarzało etykietę 1 (w tym wypadku otwierało stronę).

Wie ktoś czy istnieje możliwość napisania takiego czegoś?

PS: Może być też otwieranie danej etykiety po kliknięciu przycisku, coś jak pause>nul ale zamiast każdego przycisku np. A

Instrukcje warunkowe. Pobierasz to co wpisze osoba i w zależności co wpisze odsyłasz do danej etykiety. Pseudokod:

pobierz etykieta

jeśli etykieta = "1" to skocz to "a"

jeśli etykieta = "2" to skocz to "b"

jeśli etykieta = "3" to skocz to "c"

jeśli etykieta = "4" to skocz to "etykieta"

A mógłbyś to napisać, tak jak powinno być w bathu?

Spotkałem się już z tym, ale nie pamiętam dokładnie kodu…

Wydaje mi się, że było 1a,1b,1c etc…

Czy chodzi tutaj o to, że po wpisaniu “a” odsyła nas do 1 etykiety?

(zgubiłem książkę o bathu i nie mogę znaleźć na internecie tego urywka kodu)

hmm, pierwsze zapytanie google.pl

http://www.robvanderwoude.com/goto.php

Piszesz programy siedząc w wannie czy chodzi Ci o batch?

Tak, piszę programy siedząc w wannie… -.-

Lekkie przejęzyczenie… Trzeba mieć duży iloraz inteligencji aby się nie pokapować… (inni jakoś zrozumieli ocb.) A poza tym nie miesza się 2 języków w jeden, bo wychodzą głupoty typu: Butterfly (ang. motyl) (ang. i niem. = Latające Masło).

Dzięki Zulowski i Fiolek

Mieszanie kąpieli z plikami wsadowymi jest IMHO taką samą głupotą jak nazywania motyla latającym masłem.

Zwróciłem Ci uwagę, żebyś się czegoś nauczył, bo przejęzyczyć to mogłeś się raz, a nie cztery razy, jak Ty to zrobiłeś w tym wątku.

Ja tam doceniam ironię somekind’a, sam nieraz stosuje identyczną :slight_smile:

Oddaję honor, somekind - prawdopodobnie z przyzwyczajenia… :d

Sory, że na Ciebie najechałem, zapamiętam bath - wanna, batch - do plików wsadowych :slight_smile:

Jeszcze raz dzięki, humor mi się poprawił bo zrobiłem to co chciałem :shock:

Tak to już czasem jest, że człowiek coś nieuważnie przeczyta, potem źle zapamięta i używa złego określenia. (Jedno z modniejszych to “komplikator” ;))

Myślę, że jakbyś zadał takie pytanie na jakimś angielskojęzycznym forum, to dopiero dałoby ciekawy efekt :slight_smile:

A ja po prostu nie lubię nieścisłości, dlatego zwracam uwagę na takie kwiatki.

Też lubię to hasło, nawet mogę go czasami użyć wsród znajomych (wszyscy programisci :slight_smile: )

Wystarczy wpisać:

@echo off

:start

cls

set /p userinp=Wpisz 4= wyjscie z programu, lub cyfre 1-3 i wcisnij ENTER:

set userinp=%userinp:~0,1%

if "%userinp%"=="1" goto 1

if "%userinp%"=="2" goto 2

if "%userinp%"=="3" goto 3

if "%userinp%"=="4" goto 4

echo invalid choice

pause >nul

goto start

:1

echo Wybrales 1

pause >nul

goto end

:2

echo Wybrales 2

pause >nul

goto end

:3

echo Wybrales 3

pause >nul

goto end

:4

echo.Ten program zostanie teraz zamkniety.

pause >nul

exit

:end 

start choice.bat

exit

Zapisz to jako choice.bat 8)