El siguiente error siempre aparece después de iniciar sesión y crear una nueva pantalla en Linux:
Bad : modifier in $ (/).
Recientemente agregué algunas rutas y no sé si están relacionadas.
Para las rutas, recuerdo que agregué cosas a $PATH y .bashrc.
¿Cómo puedo corregirlo para que no vuelva a aparecer?
¡Gracias!
Comentarios
Respuesta
No utilizas bash como tu shell, sino (t)csh:
> csh % PATH="${PATH:/blah}" Bad : modifier in $ (/).
Si desea utilizar bash en su lugar, probablemente pueda ejecutar chsh o pídale al administrador del sistema que lo cambie por usted.
En bash, si tuviera que desalinear el : y colóquelo dentro de las llaves { } significaría que un modificador se aplicará a la variable. En csh las llaves no son necesarias para aplicar un modificador y en realidad necesitaría agregar llaves si no desea que : indique que un modificador lo está siguiendo.
Comentarios
- ¿Es una suposición o un hecho? Es ' difícil de decir.
- @Wildcard
bashtiene mensajes de error muy diferentes; diría: ' error de sintaxis: operando esperado (el token de error es " / blah ") '. Aclaré mi respuesta un poco más.
Respuesta
Deberá escapar «:». Entonces, su archivo cshrc debería verse así,
setenv PATH $PATH\:/path/to/add
Después de esto, puede hacerlo,
source ~/.cshrc
para aplicar cambios a la terminal actual. Se aplicará automáticamente la próxima vez que abra una nueva terminal.
Comentarios
- Una sintaxis más correcta en (t) csh sería
setenv PATH ${PATH:q}:/path/to/add. O mejorset path = ($path:q /path/to/add)o incluso mejor entcsh:set -f path = ($path:q /path/to/add)para mantener los elementos únicos.
$PATH? ¿Cambió su.bashrc? ¿Puedes publicar tu.profiley.bashrc?$y el shell interpreta$como un carácter especial.