You are here: PSPad forum > České diskuzní fórum > Zvýrazňování windows shell syntaxe

Zvýrazňování windows shell syntaxe

Goto Page: Previous1 2 3 4 5 6 7 8 9 10 11 ...LastNext

#41 Re: Kontrola poctu zavorek v batch souboru

Posted by: lazna | Date: 2015-09-11 11:31 | IP: IP Logged

V teto konstrukci se nesparuje prvni zavorka s posledni:

if not "%~1"=="" (
findstr /C:"%~1" streets.txt >NUL
if not "%errorlevel%"=="0" (
echo %~1>> streets.txt
echo INSERT into streets ^(st,added^) VALUES ^('%~1','%timestamp%'^)^; | iconv -f cp852 -t utf-8 | ..\utilities\sqlite3.exe test.db
)
)

Edited 1 time(s). Last edit at 2015-09-11 11:31 by lazna.

Options: Reply | Quote | Up ^


#42 Re: Kontrola poctu zavorek v batch souboru

Posted by: pspad | Date: 2015-09-11 12:20 | IP: IP Logged

Protoze ta prvni je brana jako retezec. Ta Batch syntaxe je ale slozita, jak se to postupem casu dolepovalo... winking smiley

Options: Reply | Quote | Up ^


#43 Re: Kontrola poctu zavorek v batch souboru

Posted by: pspad | Date: 2015-09-11 12:58 | IP: IP Logged

Doufam, ze to je opraveno. Prepsal jsem kompletne detekce retezcu, takze poprosim o provereni. Ja takove divoke konstrukce nevymyslim.

Options: Reply | Quote | Up ^


#44 Re: Kontrola poctu zavorek v batch souboru

Posted by: lazna | Date: 2015-09-13 10:06 | IP: IP Logged

pspad:
Ta Batch syntaxe je ale slozita, jak se to postupem casu dolepovalo... winking smiley

Myslite rozvijelo winking smiley

Mozna se Vam to jen zda protoze jste mentalne zustal (nic ve zlem) u Win9x kde se to jmenovalo 'batch' a bylo to v dost ranne fazi (v podstate DOS). Mezitim se to dost rozvinulo, dokonce tak zasadne ze se tomu zmenila i pripona (ktera na win o obsahu souboru dost vypovida). Verzi shell interpreteru si muzete nacist ze systemove promenne %cmdextversion%

Napriklad u bashe to funguje obdobne a nyni je ve verzi 4. U win shellu vsak dalsi rozvoj nepredpokladam protoze MS dnes spise tlaci PowerShell.

Options: Reply | Quote | Up ^


#45 Re: Kontrola poctu zavorek v batch souboru

Posted by: lazna | Date: 2015-09-13 10:09 | IP: IP Logged

pspad:
Doufam, ze to je opraveno. Prepsal jsem kompletne detekce retezcu, takze poprosim o provereni. Ja takove divoke konstrukce nevymyslim.

Po lehkem testu to zatim vypada OK. Dam pripadne jeste vedet...

Jinak tohle nic neni, mam na konte script s vice nez dvema tisici radku co pouziva ANSI sekvence. V tom se vyznat uz je na same hranici mentalniho zdravi.

Options: Reply | Quote | Up ^


#46 Re: Kontrola poctu zavorek v batch souboru

Posted by: pspad | Date: 2015-09-13 10:18 | IP: IP Logged

Quote:
Myslite rozvijelo

Ne myslel jsem opravdu dolepovalo. Pokud se neco rozviji tak, jak se s tim zpocatku nepocitalo, je treba vymyslet ruzne obskurni konstrukce, aby se dosahlo cile.
Já jsem do shellu nemusel pronikat, pokud jsem potreboval neco slozitejsiho, naprogramoval jsem si to. Asi jsem zaujaty proti skriptovani, kde skacu na zaklade podminek sem a tam na labely. U jednoduchych skriptu to jde, ale pokud jsou tam cykly, v ramci nich odskoky...

Quote:
Jinak tohle nic neni, mam na konte script s vice nez dvema tisici radku co pouziva ANSI sekvence. V tom se vyznat uz je na same hranici mentalniho zdravi.

To verim. Hlavne pak delat zmeny.

Options: Reply | Quote | Up ^


#47 Re: Kontrola poctu zavorek v batch souboru

Posted by: lazna | Date: 2015-09-13 13:36 | IP: IP Logged

lazna:
Po lehkem testu to zatim vypada OK. Dam pripadne jeste vedet...

Rozbilo se zvyraznovani labelu

call :write_to_file

Tohle uz myslim predtim fungovalo....

Options: Reply | Quote | Up ^


#48 Re: Kontrola poctu zavorek v batch souboru

Posted by: pspad | Date: 2015-09-14 13:17 | IP: IP Logged

lazna:
Rozbilo se zvyraznovani labelu

call :write_to_file

Tohle uz myslim predtim fungovalo....

CALL jsem musel přepsat, protože to bylo v kodu tak podivně. Takže teď ještě dořeším ty labely v CALL

Options: Reply | Quote | Up ^


#49 Re: Kontrola poctu zavorek v batch souboru

Posted by: lazna | Date: 2015-09-14 14:09 | IP: IP Logged

Tokeny ve FOR smycce:

%%a

je spravne zvyrazneno jako promenna, ale v

%%~a

jsou zvyraznena jen procenta ackoliv se jedna o totez jen s odebranymi uvozovkami. Prikladam kompletni seznam odkazu na promenne z helpu:

---------------------------------------

Dále bylo vylepšeno nahrazování odkazů na proměnné příkazu FOR.
Nyní můžete používat následující nepovinnou syntaxi:

%~I - Rozvine %I a odebere okolní uvozovky (").
%~fI - Rozvine %I na úplnou cestu.
%~dI - Rozvine %I pouze na písmeno jednotky.
%~pI - Rozvine %I pouze na cestu.
%~nI - Rozvine %I pouze na název souboru.
%~xI - Rozvine %I pouze na příponu souboru.
%~sI - Rozvinutá cesta obsahuje pouze krátké názvy.
%~aI - Rozvine %I na atributy souborů.
%~tI - Rozvine %I na datum a čas vytvoření souboru.
%~zI - Rozvine %I na velikost souboru.
%~$PATH:I - Prohledá adresáře uvedené v systémové proměnné
PATH a rozvine %I na úplný název prvního
nalezeného souboru. Jestliže název systémové
proměnné není definován nebo soubor není
nalezen, bude tento modifikátor rozvinut
na prázdný řetězec.

Modifikátory lze kombinovat a získat tak složené výsledky:

%~dpI - Rozvine %I pouze na písmeno jednotky a cestu.
%~nxI - Rozvine %I pouze na název a příponu souboru.
%~fsI - Rozvine %I na úplnou cestu pouze s krátkými
názvy.
%~dp$PATH:i - Vyhledá %I v adresářích uvedených v systémové
proměnné PATH a rozvine %I na písmeno
jednotky a cestu prvního nalezeného souboru.
%~ftzaI - Rozvine %I na výstup ve formátu výstupu
příkazu DIR.

Options: Reply | Quote | Up ^


#50 Re: Kontrola poctu zavorek v batch souboru

Posted by: pspad | Date: 2015-09-14 15:04 | IP: IP Logged

Díky

Pokud cjem to pochopil dobře, mělo by být: %~dp$PATH:i zvýrazněno celé jako proměnná. Je to tak?

Options: Reply | Quote | Up ^


Goto Page: Previous1 2 3 4 5 6 7 8 9 10 11 ...LastNext





Editor PSPad - freeware editor, © 2001 - 2019 Jan Fiala, Hosted by Webhosting TOJEONO.CZ, design by WebDesign PAY & SOFT, code Petr Dvořák, Privacy policy and GDPR