» Poradna » Programy

Podmienka v command prompt

 |   | 

Zdarte! potrebujem vytvorit podmienku v *.bat subore (pripadne *.vbs) porovnavam obsah dvoch premennych, pri zhode potrebujem vetvu then pri rozlisnosti else.
Za radi vdaka!

Odpovědi na otázku

 |   | 

treba ?
IF %B%==%C% goto sem
echo Nerovna se
goto konec
sem:
echo rovna se
konec:
 
je to teda maximalne neoprimalizovana hruza, ale urcite funguje...
 

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Snad jenom připojím, že je nutno pamatovat na to, že některá proměnná může být prázdná, popř. že může obsahovat mezeru. Pro ten první případ postačí předřadit oběma proměnným v tom IF nějaký znak (pro obě stejný, samozřejmě), druhý případ ošetří umístění proměnných do úvozovek (což ovšem ošetří i tu prázdnou proměnnou). Takže by to vypadalo takto:
IF "%b%"=="%c%" goto sem
a tak dále.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

vdaka moc

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

bohuzial mi to nejde..
upravil som to nasledovne:
set meno=%username%
IF %meno%==%username% goto sem
echo Nerovna se
goto koniec
:sem echo rovna sa
:koniec

navestie som skusal napisat aj s : pred navestim a za
ked je navestie: napise ze system nenasiel pozadovane navestie, ked je : pred navestim, proghram vypise doslova prvy riadok teda: IF "obsah premennej meno" == "obsah premennej username" goto sem
premenne sa zhoduju.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

1) tak, jak jsi to napsal, to nemůže chodit, protože návěští sem neexistuje (existuje návěští "sem echo rovna se". Dvojtečka je VŽDYCKY před návěštím, o jiné možnosti neuvažuj
2)nevíme nic o proměnné username - může být prázdná, může obsahovat mezeru a ani jedno z toho jsi neošetřil
Až tyhle dvě věci ostraníš, tak uvidíme, co dál

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

no uz to beha ako ma a vyzera to takto..
set meno=%username%
IF %meno%==%username% goto sem
echo Nerovna se
goto koniec
:sem
echo rovna sa
:koniec

v premena username nebude obsahovat medzeru a je v nej meno aktualne prihlaseneho uzivatela. mam presne definovane uzivatelske mena, takze obsah premenej viem predpokladat..

Vdaka za pomoc!!!

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Command




Určitě si přečtěte

Takhle zemřete, když asteroid dopadne na vaše město

Takhle zemřete, když asteroid dopadne na vaše město

** Jak by to dopadlo, kdyby na světovou metropoli či do nedalekého moře dopadl velký asteroid? ** Simulovali to odborníci z University of Southampton ** Výsledky jsou velmi zajímavé

Petr Kubala | 32

Sex a rozmnožování při mezihvězdné cestě: Kolik lidí je potřeba pro let k Proximě Centauri?

Sex a rozmnožování při mezihvězdné cestě: Kolik lidí je potřeba pro let k Proximě Centauri?

** Vědci spočítali, jak velká by musela být posádka pro vícegenerační let k nejbližší hvězdné soustavě ** Proxima Centauri se nachází 4,3 světelných let od nás ** Za současných technologií bychom k ní letěli 6300 let

Petr Kubala | 57

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

** Portál občana už funguje, vyřídíte na něm první požadavky ** Funkce se budou postupně rozšiřovat ** Web je docela moderní a přehledný

David Polesný | 65

Apple: naše mapy budou nejlepší na světě. Tajně jsme na nich pracovali několik let

Apple: naše mapy budou nejlepší na světě. Tajně jsme na nich pracovali několik let

** Apple odhalil své plány na zcela nové mapy ** Několik let pracuje na nových mapách, které by měly předběhnout konkurenci ** Objeví se s příchodem iOS 12 pro vybrané státy

Karel Javůrek | 50

Alan Turing: Genius, který matematicky stvořil počítač

Alan Turing: Genius, který matematicky stvořil počítač

Řešením matematického problému se dostal k modelu teoretického stroje, který nese jeho jméno a je základem logiky univerzálních počítačů.

Pavel Tronner | 57

Nová zbraň Microsoftu proti iPadu: Levný tablet Surface Go bude stát jen deset tisíc

Nová zbraň Microsoftu proti iPadu: Levný tablet Surface Go bude stát jen deset tisíc

** Microsoft představil nový tablet Surface Go ** Nový model zaujme nízkou cenou, ale schopnostmi zařízení Surface ** Microsoft nepoužil čip ARM, ale klasický procesor od Intelu 

Karel Javůrek | 116


Aktuální číslo časopisu Computer

Velký test 18 bezdrátových sluchátek

Vše o přechodu na DVB-T2

Procesory AMD opět porážejí Intel

7 NVMe M.2 SSD v přímém souboji