Portál AbcLinuxu, 23. dubna 2024 22:38


Dotaz: Co způsobuje v bash tuto chybu?

5.9.2021 22:09 dedek
Co způsobuje v bash tuto chybu?
Přečteno: 545×
Odpovědět | Admin
Dobrý večer,

co může způsobit tuto chybu v bash?

app.sh: line 20464: syntax error near unexpected token `červená:'
app.sh: line 20464: `        read "červená řepa: " co'
Díky.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

5.9.2021 22:18 X
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Je to chyba v zapisu, syntaxi.
5.9.2021 22:29 dedek
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
A vydíte tam nějakou?
5.9.2021 22:47 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Parametre príkazu "read" sú mená premenných. Chceš, aby sa premenná volala "červená řepa: " ?
Řešení 1× (Вherzet)
6.9.2021 01:01 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Chybne pouzitie read.
$ read --version
bash: read: --: neplatná voľba
read: použitie read [-ers] [-a pole] [-d oddeľovač] [-i text] [-n nznakov] [-N nznakov] [-p výzva] [-t zdržadnie] [-u fd] [názov ...]
Spravne by bolo:
read -p "pekny som? " answer
debian.plus@protonmail.com
k3dAR avatar 6.9.2021 06:36 k3dAR | skóre: 62
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Chybne pouzitie read.
$ read --version
bash: read: --: neplatná voľba
to koukam i u tebe ;-) jestli chces napovedu(interniho prikazu bashe):
$ help read

read: read [-ers] [-a pole] [-d oddělovač] [-i text] [-n p_znaků] [-N p_znaků] [-p výzva] [-t limit] [-u fd] [jméno…]
    Načte ze standardního vstupu jeden řádek a rozdělí jej na položky.
    
    Ze standardního vstupu, nebo deskriptoru souboru FD, je-li zadán
    přepínač -u, je načten jeden řádek. Řádek se rozdělí na části jako při
    dělení na slova a první slovo je přiřazeno do prvního JMÉNA, druhé slovo
    do druhého JMÉNA a tak dále, přičemž přebývající slova se přiřadí do
    posledního JMÉNA. Pouze znaky uvedené v $IFS jsou považovány za
    oddělovače slov.
    
    Nejsou-li uvedena žádná JMÉNA, načtený řádek bude uložen do proměnné REPLY.
    
    Přepínače:
      -a pole       načtená slova budou přiřazena do postupných prvků POLE
                    počínaje indexem nula
      -d oddělovač  pokračuje, dokud není načten první znak ODDĚLOVAČE
                    namísto nového řádku
      -e            načte řádek pomocí knihovny Readline
      -i text       použije TEXT jako prvotní text pro Readline
      -n p_znaků    vrátí řízení po načtení P_ZNAKŮ znaků, místo čekání na
                    nový řádek, avšak respektuje oddělovač, je-li méně než
                    P_ZNAKŮ
      -N p_znaků    vrátí řízení pouze po načtení přesně P_ZNAKŮ znaků,
                    pokud se neobjeví konec souboru nebo nevyprší limit,
                    ignoruje jakýkoliv oddělovač
      -p výzva      vypíše řetězec VÝZVA bez závěrečného nového řádku dříve,
                    než se zahájí načítání
      -r            nepovolí zpětná lomítka pro escapování jakýchkoliv znaků
      -s            vstup pocházející z terminálu nebude zobrazován
      -t limit      umožní vypršení časového limitu a vrácení chyby, pokud
                    nebude načten celý řádek do LIMIT sekund. Hodnota proměnné
                    TMOUT představuje implicitní limit. LIMIT smí být desetinné
                    číslo. Je-li LIMIT 0, read okamžitě skončí, aniž by zkusil
                    načíst jakákoliv data, a vrátí úspěch, jen bude-li na
                    zadaném deskriptoru souboru připraven vstup. Návratový
                    kód bude větší než 128, pokud časový limit bude překročen.
      -u fd         čte z deskriptoru souboru FD namísto standardního vstupu
    
    Návratový kód:
    Návratový kód je nula, pokud se nenarazí na konec souboru, časový limit
    pro čtení nevyprší (pak je větší než 128), nedojde k chybě při
    přiřazování do proměnné, nebo není poskytnut neplatný deskriptor souboru
    jako argument -u.
porad nemam telo, ale uz mam hlavu... nobody
Ruža Becelin avatar 6.9.2021 11:43 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Odpovědět | | Sbalit | Link | Blokovat | Admin
app.sh: line 20464

20.5k radek?? :-D
6.9.2021 17:23 X
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Muze to byt samorozbalovaci skript, ktery obsahuje i binarni data.
k3dAR avatar 7.9.2021 00:37 k3dAR | skóre: 62
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
nejsem si jistej, ale ta binarni myslim musi byt na konci a navic, instalacni bash+binar co se pta na "červená řepa: "? :-D muj tip je ze jde o domaci ukol, tazatel dostal pouze tento "vymyslenej" vystup kde to cislo radku je imaginarni ;-)
porad nemam telo, ale uz mam hlavu... nobody
Ruža Becelin avatar 7.9.2021 07:54 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
No tvl. Bych cekal rozbity skript, ktery maji spravit a nahrat na skolni git. Ale to bych po nejake te dekade, co jsem ze skoly pryc, chtel mozna moc, co?
7.9.2021 09:34 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
Aby to číslo riadku a enumerátor zeleniny neboli jednoznačné identifikátori študenta, nech sa to pánovi učiteľovi ľahšie hľadá. Meh ...
Ruža Becelin avatar 7.9.2021 23:39 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?
To zni lakave :-D
Gréta avatar 8.9.2021 00:52 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: Co způsobuje v bash tuto chybu?

tttttsssss učitelskej jeto neni schopnej pořádně naučit ale bude jakoby vrážet čas do googlení domácáků :D

a vubec ať sem klidně pan učitelskej přileze a vysvětlí nám jaktože to dědek neumí ikdyž si stim vočividně hraje/zkouší to pouštět a jaktože se dědek ptá rači tady a bojí/nevidí smysl se ptát přímo učitelskýho :D ;D

8.9.2021 08:12 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Can you say: strawman?
Ja len, aby mi to bolo jasné: najprv si domyslíme, že to je zadanie, potom si domyslíme, že to zadal učiteľ, potom si domyslíme, že ten učiteľ to fláka a zadania berie z googlu, potom si domyslíme, že to je samorozbaľovací skript, potom si domyslíme, že ten učiteľ sám nevie čo učí ...

Čuchám, čuchám, ... cítim slameného panáka.

Je pravda, že mnohé z tých domnienok by mohol autor otázky objasniť, ale nesplietajme si vlastné teórie, ktoré potom odsudzujeme.
k3dAR avatar 8.9.2021 08:31 k3dAR | skóre: 62
Rozbalit Rozbalit vše Re: Can you say: strawman?
tak si preber fakta, tazatel da minimum informaci, pouze par radkovej vystup, v nem je pocet radku u bashu skoro nemyslitelnej, delam v bashi hodne a vsechno i silenosti, ale pres par tisic radku sem se u niceho nedostal, a predstava ze by nekdo napsal script 10x vetsi a neumel pouzit jednoduchej read cmd ? ;-)
porad nemam telo, ale uz mam hlavu... nobody
8.9.2021 08:37 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Can you say: strawman?
Pseudoindividuálny prístup ku študentom umožňuje odhaliť kto danú úlohu vyriešil svojpomocne, a kto ju hodil na internet nech to zaňho urobia iní (aj s vysvetlením nech ho učiteľ nenačapá na hruškách).

Ale toto kľudne mohlo byť aj zadanie pre filter na uchádzača o prácu. Do tak dlhého skriptu asi nebude robiť zásahy človek, ktorému robí ťažkosti pozrieť si návod na bash builtin read, a zabudne napísať parameter:
$ read -p "zadaj ovocie: " vstup ; echo "zadal si: " ${vstup}
zadaj ovocie: черепаха 
zadal si:  черепаха

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.