Jak vyřešit chybu terminálu Bash: „Bash: Chyba syntaxe poblíž neočekávaného tokenu ‚Newline‘

Jak Vyresit Chybu Terminalu Bash Bash Chyba Syntaxe Pobliz Neocekavaneho Tokenu Newline



Při práci se skriptem Bash se můžete setkat s neočekávanou chybou „nový řádek“ tokenu, která ovlivňuje provádění vašeho skriptu. Pochopení této chyby je prvním krokem k jejímu vyřešení. Tento příspěvek popisuje vše o této chybě. Budeme rozumět tomu, co to spouští a jak byste to měli vyřešit, abyste se s tím znovu nesetkali. Pojďme začít!

Co je to Bash: Chyba syntaxe poblíž neočekávaného tokenu „Newline“

Při provádění skriptu Bash můžete z různých důvodů narazit na neočekávanou chybu „nový řádek“ tokenu. K této chybě dochází, když Bash ve vašem skriptu nebo vstupu zjistí neočekávané znaky.

Pokud se setkáte s touto chybou, způsobuje ji chyba syntaxe ve vašem skriptu. Uvedeme různé případy, kdy se chyba může vyskytnout, a uvidíme, jak ji vyřešit, abyste chybu napravili. Podívejte se na následující příklady.







Příklad 1: Úhlové závorky bez uvozovek

Uveďte všechny lomené závorky, které používáte ve svém kódu při psaní skriptu Bash. Teprve pak to Bash přečte jako úhlovou závorku. V opačném případě vyvolá neočekávanou chybu tokenu „nový řádek“.



Na následujícím obrázku jsme se pokusili spustit skript Bash na terminálu a dostali jsme chybu syntaxe takto:







První věc, kterou musíte udělat, když narazíte na takovou chybu, je otevřít skript pomocí textového editoru. Pro tento případ používáme nano editor.



Když otevřete skript, vyhledejte jakýkoli kód, který obsahuje lomené závorky v uvozovkách. To je hlavní příčina chyby. Na předchozím obrázku můžeme vidět, že naše proměnná str má řetězec neuvedený v uvozovkách, a to je příčinou chyby syntaxe. Tuto chybu můžete opravit tak, že ji citujete, jak je znázorněno v následujícím textu:

Pokud jej ocitujeme podle očekávání Bashe a znovu spustíme stejný skript, podaří se nám skript úspěšně spustit.

Příklad 2: Použití úhlových závorek v parametrech příkazového řádku Bash

Máte-li skript Bash, který přebírá vstup od uživatele, který lze použít jako argumenty v parametru ve skriptu, přidání lomených závorek bez uvozování způsobí neočekávanou chybu tokenu „nový řádek“.

Pokud chcete zahrnout argument, který obsahuje lomené závorky, ujistěte se, že jej citujete. Pokud otevřeme skript Bash, můžeme zkontrolovat syntaxi, abychom identifikovali původ chyby.

V předchozím kódu skriptu vidíme, že přijímáme argumenty z uživatelského vstupu. Když tedy skript spustíme, musíme přidat argumenty stejně jako my, což způsobí, že se objeví chyba syntaxe. V uživatelském vstupu jsme si všimli, že jsme do druhého argumentu zadali lomenou závorku, což způsobí, že Bash vyvolá chybu syntaxe.

Pokud však uvozujeme lomenou závorku a zadáme ji znovu, úspěšně spustíme Bash skript bez chyb.

Ve výstupu se nám po ocitování lomených závorek podařilo vytisknout je na terminálu podle skriptu.

Pokud se vám tedy zobrazí chyba „Bash: chyba syntaxe u neočekávaného nového řádku“ tokenu, začněte kontrolou kódu ve skriptu, abyste zjistili, kde je chyba. Kromě toho zkontrolujte, zda máte v kódu parametry a zda k chybě nedošlo kvůli chybě v argumentu, který zadáváte na terminálu.

Závěr

Při práci se skriptem Bash můžete narazit na „Bash: neočekávaný token chyby syntaxe „nový řádek“ ze dvou hlavních důvodů: možná jste neuvedli lomené závorky. Přesto můžete mít ve své argumentaci chybu. Tento příspěvek popisuje tyto dvě příčiny a jak chybu opravit.