Următoarea eroare apare întotdeauna ori de câte ori după conectare și crearea unui nou ecran în Linux:
Bad : modifier in $ (/).
Recent am adăugat câteva căi și nu știu dacă este legat.
Pentru căi, îmi amintesc că am adăugat lucruri la $PATH și .bashrc.
Cum aș putea să-l corectez astfel încât să nu mai apară?
Vă mulțumim!
Comentarii
Răspuns
Nu utilizați bash ca shell, ci (t)csh:
> csh % PATH="${PATH:/blah}" Bad : modifier in $ (/).
Dacă doriți să utilizați în schimb bash, puteți rula probabil chsh sau cereți administratorului de sistem să îl modifice pentru dvs.
În bash, dacă ați alinia greșit : și plasați-l în interiorul parantezelor { } ar însemna că un modificator se aplică variabilei. În csh parantezele nu sunt necesare pentru a aplica un modificator și de fapt ar fi nevoie să adăugați paranteze dacă nu nu doresc ca : să semnaleze că un modificator îl urmărește.
Comentarii
- Este o presupunere sau un fapt? Este ' greu de spus.
- @Wildcard
bashare mesaje de eroare foarte diferite; s-ar spune: ' eroare de sintaxă: operand așteptat (simbolul de eroare este " / bla ") '. Am clarificat răspunsul meu încă ceva.
Răspuns
Va trebui să scapi „:”. Deci, fișierul dvs. cshrc ar trebui să arate,
setenv PATH $PATH\:/path/to/add
După aceasta, puteți face,
source ~/.cshrc
pentru a aplica modificări la terminalul curent. Va fi aplicat automat data viitoare când deschideți un terminal nou.
Comentarii
- O sintaxă mai corectă în (t) csh ar fi
setenv PATH ${PATH:q}:/path/to/add. Sau mai bineset path = ($path:q /path/to/add)sau chiar mai bine întcsh:set -f path = ($path:q /path/to/add)pentru a păstra elementele unice.
$PATH? V-ați schimbat.bashrc? Puteți posta.profileși.bashrc?$și shell-ul interpretează$ca un caracter special.