3 votos

Accidentalmente eliminado todos los comandos en la terminal

Yo estaba siguiendo un tutorial y poner en la siguiente línea:

export PATH="~/.composer/vendor/bin/"

Ahora no hay comandos funcionan en absoluto, ni siquiera las cosas como ls.

¿Qué hace el comando ¿que puedo copiar y pegar en y cómo puedo solucionarlo?

7voto

SooDesuNe Puntos 3650

Lo que hizo

$PATH es la variable que le dice a su shell (bash por defecto) dónde buscar para usted comandos. Contiene una lista de directorios separados por dos puntos (:). Cuando escriba ls, el shell va a buscar en todos los directorios listados en $PATH (/bin, /usr/bin, y así sucesivamente) hasta que encuentra un archivo llamado ls, y se ejecutará.

Normalmente se establece una variable simplemente con

variable="foo bar baz"

...sin embargo, que sólo los conjuntos de variables de la shell actual -- los cambios no se llevan a subshells, que puede ser importante en, por ejemplo, secuencias de comandos. El uso de

export variable="foo bar baz"

...va a permitir el uso de la variable en subshells.

Así, cuando se utiliza export PATH="~/.composer/vendor/bin/", que son sobre-escritura de la $PATH variable, así que cuando intenta utilizar ls, el shell busca en ~/.composer/vendor/bin/, no encuentra ningún archivo de nombre ls, y así se produce un error. Probablemente lo que quiero hacer es agregar ~/.composer/vendor/bin/ su $PATH, que se puede hacer con:

export PATH="$PATH:~/.composer/vendor/bin/"

Usted puede ver el contenido actual de su $PATH con echo $PATH.

Cómo solucionarlo

Todo esto sólo se aplica a la shell actual (y todos sus subshells, ya que usted usó export), por lo que usted puede solucionar el problema de forma más sencilla mediante la apertura de una nueva terminal, como Mateusz Szlosek la respuesta de notas.

Si ¿ desea alterar su $PATH permenantly, usted puede poner esa línea al final de su ~/.bashrc, los cuales se obtienen cada vez que abra un shell interactivo. Esta es una práctica estándar si desea escribir un par de sus propias secuencias de comandos (en Linux utilizamos ~/bin para los scripts de usuario, pero se puede ir a cualquier lugar).

3voto

hjdm Puntos 18

export comando funciona en la sesión actual. Usted puede "arreglar" mediante la apertura de la nueva Terminal de ventana/pestaña.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X