Följande fel visas alltid varje gång efter inloggning och skapande av en ny skärm i Linux:
Bad : modifier in $ (/).
Nyligen lade jag till några vägar och jag vet inte om det är relaterat.
För vägarna kommer jag ihåg att jag lade till saker till $PATH och .bashrc.
Hur kunde jag korrigera det så att det inte visas igen?
Tack!
Kommentarer
Svar
Du använder inte bash som ditt skal, utan (t)csh:
> csh % PATH="${PATH:/blah}" Bad : modifier in $ (/).
Om du istället vill använda bash kan du förmodligen köra chsh eller be din systemadministratör att ändra det åt dig.
I bash, om du skulle feljustera : och placera den i de lockiga hakparenteserna { } det skulle betyda att en modifier ska tillämpas på variabeln. I csh behövs inte de lockiga hakparenteserna för att använda en modifierare och du skulle faktiskt behöva lägga till lockiga hakparenteser om du inte vill att : ska signalera att en modifierare följer den.
Kommentarer
- Är detta en gissning eller ett faktum? Det är ' svårt att säga.
- @Wildcard
bashhar mycket olika felmeddelanden; det skulle säga: ' syntaxfel: operand förväntas (fel token är " / blah ") '. Jag klargjorde mitt svar lite mer.
Svar
Du måste fly ”:”. Så din cshrc-fil ska se ut,
setenv PATH $PATH\:/path/to/add
Efter detta kan du göra
source ~/.cshrc
för att tillämpa ändringar på den aktuella terminalen. Det tillämpas automatiskt nästa gång du öppnar en ny terminal.
Kommentarer
- En mer korrekt syntax i (t) csh skulle vara
setenv PATH ${PATH:q}:/path/to/add. Eller bättreset path = ($path:q /path/to/add)eller ännu bättre itcsh:set -f path = ($path:q /path/to/add)för att hålla elementen unika.
$PATH? Ändrade du din.bashrc? Kan du lägga upp din.profileoch.bashrc?$i och skalet tolkar$som ett specialtecken.