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
bash
har 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.profile
og.bashrc
?$
i, og skallet tolker$
som et spesialtegn.