Følgende feil vises alltid hver gang etter pålogging og oppretting av en ny skjerm i Linux:
Bad : modifier in $ (/).
Nylig la jeg til noen stier, og jeg vet ikke om det er relatert.
For stiene husker jeg at jeg la til ting til $PATH og .bashrc.
Hvordan kunne jeg rette det slik at det ikke vises igjen?
Takk!
Kommentarer
Svar
Du bruker ikke bash som skall, men (t)csh:
> csh % PATH="${PATH:/blah}" Bad : modifier in $ (/).
Hvis du vil bruke bash i stedet, kan du sannsynligvis kjøre chsh eller be systemadministratoren om å endre det for deg.
I bash, hvis du skulle feiljustere : og plasser den i krøllete bukseseler { } det vil bety at en modifikator skal brukes på variabelen. I csh krøllete bukseseler er ikke nødvendig for å bruke en modifikator, og du vil faktisk trenge å legge til krøllete bukseseler hvis du gjør ikke vil at : skal signalisere at en modifikator følger den.
Kommentarer
- Er dette en gjetning eller et faktum? Det ' er vanskelig å fortelle.
- @ Wildcard
bashhar veldig forskjellige feilmeldinger; det vil si: ' syntaksfeil: operand forventet (feiltegn er " / blah ") '. Jeg avklarte svaret mitt litt mer.
Svar
Du må flykte «:». Så cshrc-filen din skal se ut,
setenv PATH $PATH\:/path/to/add
Etter dette kan du gjøre det,
source ~/.cshrc
for å bruke endringer på gjeldende terminal. Den blir automatisk brukt neste gang du åpner en ny terminal.
Kommentarer
- En mer korrekt syntaks i (t) csh ville være
setenv PATH ${PATH:q}:/path/to/add. Eller bedreset path = ($path:q /path/to/add)eller enda bedre itcsh:set -f path = ($path:q /path/to/add)for å holde elementene unike.
$PATH? Har du endret.bashrc? Kan du legge ut.profileog.bashrc?$i, og skallet tolker$som et spesialtegn.