Исправљено: грешка у синтакси близу неочекиваног токена `(‘



Испробајте Наш Инструмент За Елиминисање Проблема

Порука о грешци синтаксна грешка у близини неочекиваног токена `(‘ се јавља у окружењу Уник типа Цигвин и у интерфејсу командне линије у оперативном систему Виндовс. Ова грешка ће се највероватније покренути када покушате да покренете скрипту љуске која је уређивана или креирана у старијим системима ДОС / Виндовс или Мац.



Синтаксна грешка у близини неочекиваног токена `(

Синтаксна грешка у близини неочекиваног токена `(‘



Ова порука о грешци такође се појављује када уносите наредбе у Линук наредбену линију за свакодневне задатке као што је ручно копирање датотека итд. Главни разлози због којих се ова порука о грешци јавља јесу или лоша синтакса или проблем ОС-а у тумачењу наредби другог система шкољка.



Шта узрокује синтаксну грешку у близини неочекиваног токена `(‘?

Разлози за ову поруку о грешци су врло разноврсни и не могу се навести у једном чланку, јер постоји хиљаде могућности погрешке синтаксе приликом извршавања наредби. Основни разлози за ову грешку су:

  • Лоша синтакса приликом извршавања било које наредбе на било којој платформи. Или не користите наредбу правилно или сте унели погрешну синтаксу.
  • Шкољка није компатибилан између Уник / ДОС система.
  • Постоје проблеми са покретањем скрипте басх љуске из други извор .

У овом чланку претпостављамо да знате основе кодирања и да имате идеју шта радите. Ако сте почетник, најбоље је да следите детаљне упуте за језик / наредбу коју покушавате да извршите. Вероватно сте погрешили у некој синтакси.

Решење 1: Провера синтаксе и формата наредби

Први и најважнији разлог зашто бисте могли да наиђете на ову поруку о грешци је погрешна синтакса вашег кода или непоштовање тачног формата наредби. Свака наредба има унапред дефинисани формат који можете видети у њеној документацији. Неколико параметара није обавезно, а остали су обавезни.



Даље, треба водити рачуна о додатној пажњи додатни простор , употреба двоструки наводници , и обавезно потребни параметри. Ако било који од њих недостаје или је нетачно проглашен, нећете моћи извршити свој код.

На пример, уместо следећег кода

[мицом7] # ./цтопо.сх ум_тест1 [(1,2), (2,1)]

Морате га извршити као

[мицом7] # ./цтопо.сх ум_тест1 '[(1,2), (2,1)]'

Такође, уверите се да правилно извршавате своје наредбе / скрипту љуске ако се простире на неколико редова.

Због типа параметра неопходни су двоструки наводници. Додатни простор такође може покварити ваш код и форсирати поруку о грешци. Обавезно проверите званична документација наредбе коју извршавате и погледајте да ли је ту проблем.

Решење 2: Решавање проблема са скриптом љуске

Ако користите скрипту љуске која ради у изворном систему, али враћа грешку у циљу, можете да решите проблем са скриптом тако што ћете проверити променљиве које су ускладиштене током извршавања, а затим видети шта узрокује проблем. Ово је врло чест узрок, јер у неколико случајева љуска покушава да протумачи знак који се не може исписати.

Покушајте да покренете љуску са параметром „вк“. Ово ће нам показати које се наредбе извршавају и које се вредности чувају у скрипти. Овде можете да решите проблеме и дијагностикујете шта иде по злу.

На пример, извршите скрипту у терминалу након укључивања „вк“ као:

# сх -вк ./тест_сцрипт5.сх

Садржај скрипте можете проверити помоћу команде „мачка“ као:

# мачка тест_сцрипт5.сх

Решење 3: Коришћење команде „дос2уник.еке“

У Виндовс / ДОС текстуалним датотекама, нови ред је комбинација враћања носача ( р), а затим увлачења линија ( н). У Мац-у (пре Мац ОС Кс), прекид линије користио је једноставан повратак карата ( р). Уник / Линук и Мац ОС Кс користе преломе линија ( н). Ако користите Цигвин, неће успети да обради скрипте које су направили ДОС / Виндовс и старији Мац због додатног знака Повратак кочије ( р).

Користећи

Коришћењем команде „дос2уник.еке“

Овде можете направити команду „дос2уник.еке“ која ће претворити скрипту у исправан формат, а затим је можете извршити без икаквих проблема.

Да бисте закључили, потребно је да истражите своје команде и врсту платформе коју користите и да се уверите да нема одступања. Будући да не можемо да покријемо сваку могућност, имали бисте идеју какве се грешке могу појавити и како их исправити.

3 минута читања