Rossz: módosító a $ (/) -ban. mindig megjelenik, amikor bejelentkezés után új képernyőt hoz létre a Linuxban

A következő hiba mindig megjelenik, amikor bejelentkezés után új képernyőt hoz létre a Linuxban:

Bad : modifier in $ (/). 

Nemrégiben felvettem néhány utat, és nem tudom, hogy kapcsolódik-e.

Az utakhoz emlékszem, hogy a $PATH és .bashrc.

Hogyan javíthattam, hogy ne jelenjen meg újra?

Köszönjük!

Megjegyzések

  • Nem tudjuk, ' nem tudjuk, hogy ' is. Szeretné hozzáadni azt, amit megváltoztatott a kérdéshez?
  • „Hozzáadott néhány utat” azt jelenti, hogy a $PATH címkéhez hozzáadta a dolgokat? Megváltoztatta a .bashrc fájlt? Feladhatja .profile és .bashrc?
  • Lásd: stackoverflow.com/questions/8805839/bad-modifier-in
  • Vad találgatás: hozzáadtál egy útvonalat, amelyben $ található, és a shell speciális karakterként értelmezi a $ -t.
  • Emlékszem, hogy a $ PATH és a .bashrc fájlokhoz adtam dolgokat. Hogyan tekinthettem meg a .profilomat és a .bashrc fájlt? Mark, megnéztem azt a bejegyzést, és megpróbáltam valami hasonlót beállítani: setenv PATH $ {PATH}: /, de nem működött '.

Válasz

Nem a bash -t használja shellként, hanem a (t)csh:

> csh % PATH="${PATH:/blah}" Bad : modifier in $ (/). 

Ha a bash -t szeretné használni, valószínűleg futtathatja a chsh, vagy kérje meg a rendszergazdát, hogy változtassa meg az Ön helyett.

A bash mezőben, ha rosszul illesztené a : és helyezze a göndör zárójelek közé { } ez azt jelentené, hogy egy módosító értéket a változóra kell alkalmazni. A csh szakaszban a göndör zárójelekre nincs szükség a módosító alkalmazásához, és valójában nem kell göndör zárójelet adnia, ha nem szeretné, ha a : jelezné, hogy egy módosító követi.

Megjegyzések

  • Ez egy tipp vagy tény? ' nehéz megmondani.
  • @ Vadkártya bash nagyon különböző hibaüzenetei vannak; ez azt mondaná: ' szintaxis hiba: operandum várható (a hibakód " / blah ") '. Még pontosítottam a válaszomat.

Válasz

Meg kell szöknie a “:” elől. Tehát a cshrc fájljának úgy kell kinéznie,

setenv PATH $PATH\:/path/to/add 

Ezt követően megteheti:

source ~/.cshrc 

módosítások alkalmazásához az aktuális terminálon. Ezt automatikusan alkalmazzák, amikor legközelebb megnyílik egy új terminál.

Megjegyzések

  • A (t) csh helyesebb szintaxisa setenv PATH ${PATH:q}:/path/to/add. Vagy jobb: set path = ($path:q /path/to/add) vagy még jobb: tcsh: set -f path = ($path:q /path/to/add), hogy az elemek egyediek legyenek.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük