Bash (Bourne igen Shell) er et kommandolinjeprogram, der accepterer angivne kommandoer og udfører dem. Det tager Linux kommandoer direkte indtastet i det interaktivt fra et tastatur eller fra en shell script-fil.
Bash bruges i Linux og Mac systemer til at køre systemet, og det er standardskallen i et flertal af moderne Linux-distributioner såsom Ubuntu, Debian, Fedora, Rocky Linux og AlmaLinux for at nævne nogle få.
En af de mest almindelige fejl, som brugere støder på, når udførelse af shell-scripts eller kommandoer på bash-skallen er "bash: syntaksfejl nær uventet token '('“. Dette kan virke noget forvirrende, og du spekulerer måske på, hvor du gik galt med at udføre kommandoen.
Fejlen tilskrives hovedsageligt en operation udført på en fil, hvis filnavn er omgivet af parenteser eller runde parenteser.
Når du bruger parenteser med filnavne eller i shell-scripts, kan du SKAL ALTID SLIPPE dem. Hvis du ikke gør det, vil du sandsynligvis løbe ind i denne type fejl.
I bash betragtes parenteser eller runde parenteser som specialtegn, og skal derfor undlades, når du udfører filhandlinger som f.eks. skabe, kopiering, fjernelse, og at downloade en fil.
Lad os tage et simpelt eksempel og simulere fejlen. Når du opretter en fil, skal du sige, sample_file (data).txt
bruger berøringskommando, vil du løbe ind i følgende fejlmeddelelse som vist.
$ touch sample_file (data).txt bash: syntaksfejl nær uventet token `('
Lad os nu skifte gear og tjekke måder, hvorpå du kan løse ovenstående fejl.
Hvis du insisterer på at have et filnavn med parentes, er løsningen at præfikse hver af parenteserne med en omvendt skråstreg. Dette er populært kendt som at undslippe parentesen og har følgende format: \(og\)
. Omvendt skråstreg kommer lige før hver parentes.
I vores tidligere eksempel ville vi oprette vores fil som følger uden problemer.
$ touch sample_file\(data\).txt.
Fra følgende output kan du se, at vi har oprettet filen uden problemer ved at undslippe parentesen.
Det samme princip gælder, når du kopierer, fjerner og omdøber filen som vist nedenfor.
$ cp sample_file\(data\).txt /tmp/ $ rm sample_file\(data\).txt.
Det andet alternativ er at omslutte hele filnavnet inden for dobbelte anførselstegn. Dette trick vil også fungere uden problemer.
$ cp "sample_file (data).txt" /tmp. $ rm "sample_file (data).txt"
Brug af ovenstående metoder vil hjælpe dig med at komme ud af denne fejl og problemfrit udføre operationer på dine filer.
Og der går du! I denne korte vejledning har vi vist dig, hvordan du løser "bash: syntaksfejl nær uventet token '('" fejl i Linux. Som du har set, er rettelsen ret enkel og ligetil. Din feedback er velkommen.