Diskuze: Porovnávanie reťazcov s medzerami. (Batch)

Člen

Zobrazeno 7 zpráv z 7.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |


Máš nějaký rozumný důvod se učit, či cokoli dělat, v batchi? Raději bych volil bash (.sh), který rozumně rozjedeš i na Windows.
Naozaj chápem, čo tým chceš povedať. Samozrejme že sa chcem učiť aj
iné (pre mňa nové) programovacie jazyky. niečo v bashi som už videl,
skúšal editovať a viem že je dosť podobný batchu. Ale aj tak zatiaľ, z
osobných dôvodov preferujem batch. Okrem toho, to ku čomu sa na tento
(problém?) pýtam je, že práve pridávam nejaké tie featury ku môjmu už
existujúcemu batchu, a zatiaľ nevidím dôvod, prečo to celé prepisovať do
bashu alebo do iného programovacieho jazyka. (aj keď sa ten dôvod možno
práve teraz našiel
)
Každopádne, týmto si mi s mojim problémom aktuálne vôbec nepomohol :-/ ale
aj tak si cením tvoju ochotu, a snahu
.
P.S. bash sa dá rozbehať na widlách?
To som nevedel.
batch snad nikdo nepoužívá, možná občas někdy něco na windows...
bash (a další shelly) jsou na linuxech a macích dost dobře podporované a většinou právě tak všude uvidíš .sh věci. Na windows se dají rozběhnout v různých programech jako MinGW, Cygwin, Git Bash, na Windows 10 je tam nově skvělý subsystém, ...
Opravdu nemá cenu se v batchi nějak učit, nebo něco vyvíjet. Majorita (s
významem spíše "všichni") jeden na bash či obdobách. 
Tam bys to napsal nějak takto (nezkoušeno):
Nevím přesně odkud se bere tvá proměnná, ale budu předpokládat, že je to proměnná z 1. parametru skriptu, tj. z ./skript parametr1
if [ "$1" == "ECHO is off." ]; then
echo "ECHO is off. VALID"
else
echo "ECHO is off. NOT VALID"
fi
Jeden z dôvodov prečo som batchi, je ten, že keď mi niečo treba, tak jednoducho vyberiem flashku, pripojim ku pc spustim skript, a ten sa už postará o všetko čo má. nepotrebujem vtedy doinštalovávať na každé pc, kde mi to treba žiadne runtimy, pluginy, knižnice, alebo iné programy (napr.: vyššie uvedené MinGW, Cygwin, Git Bash). Ide mi teda o jednoduchosť, efektívnosť, univerzálnosť a v podstate spoľahlivosť (myslím skôr tú, že som to napísal ja, a teda že to nieje žiadny blast).
Inak ak sa batch spustí Drag-n-Drop metódou, vyzerá to nejako takto:
C:\WINDOWS\system32\cmd.exe /c ""C:\Users\Msprg\Desktop\ECHO is off.
validator.bat" "C:\Users\Msprg\Desktop\File.bin""
edit://
Hej, a mimochdom ja som
snad nikdo
No, tak som si pomohol sám
.
Takže, čo sa stalo? Ja som si vlastne iba neporozumel s batchom. 
%1 je vlastne parameter batchu pri spustení. No, a pri spustení batchu
dvojklikom, je v %1 v podstate nič. Teda vlastne je tam textový reťazec s
nulovou dĺžkou.
Okrem toho, sa nám treba ešte trošku lepšie pozrieť na to, ako vlastne
funguje príkaz echo.
Echo je vlastne samostatný program, (tak isto, ako vlastne takmer všetky
batchové príkazy) ktorý iba na výstupe vráti jeho prvý parameter. (echo
ahoj! je spustenie programu "echo" s parametrom "ahoj!").
Ak ale program echo spustíme bez parametrov, tak proste iba vypíše aktuálny
stav toho, či je echo zapnuté. (ak je pred príkazom echo bez parametrov
príkaz
@echo off
vyhodí
ECHO is off.
)
Takže, kde bola chyba? Zase tam kde vždy, medzi stoličkou a klávesnicou.

Keď som spustil
echo %1
Tak som tým vždy vlastne iba spustil
echo
Vo výsledku som to teda nemohol porovnávať 
Tu je teda funkčný, odskúšaný výsledok:
@echo off
setlocal enableextensions disabledelayedexpansion
if "%~1"=="" goto nothing
echo In %1 is something.
pause
exit
:nothing
echo In %1 is nothing.
pause
exit
Proč použít batch? Co třeba nějaké doplňující skripty po instalace vlastního produktu? Nějaký automatický úklid / build apod. Nevím k čemu bych to doplňoval dalším kusem SW abych rozběhal bash.
Z vlastní zkušenosti jsme měli prá PS / Batch skriptů po instalaci produktu, které provedli nějaké úkony na finální konfiguraci apod.
Zobrazeno 7 zpráv z 7.