GNU/Linux >> Tutoriales Linux >  >> Linux

¿En qué shell me estoy ejecutando?

Cuando ejecuto echo $SHELL la salida dice /bin/tcsh lo que significa que estoy ejecutando un tcsh shell.
Pero, por ejemplo, cuando emito el siguiente comando

alias emacs 'emacs -nw' 

Recibo el siguiente error:

bash: alias: emacs: not found
bash: alias: emacs -nw: not found

y cuando emito alias emacs="emacs -nw" funciona bien!

Esto es confuso ya que estoy ejecutando tcsh pero los comandos son interpretados por bash .

¿Cuál podría ser el motivo?

Respuesta aceptada:

$SHELL no es necesariamente su shell actual, es el shell de inicio de sesión predeterminado. Para verificar el shell que está usando, intente

ps $$

Esto debería funcionar en los Unix/Linux más recientes con un ps que soporta la sintaxis BSD. De lo contrario, esta es la forma portátil (POSIX)

ps -p $$

Eso debería devolver algo como esto si está ejecutando tcsh :

8773 pts/10   00:00:00 tcsh

Si quieres tener tcsh sea ​​su shell predeterminado, use chsh para configurarlo.


Linux
  1. Cómo comprobar qué versión de Postgres se está ejecutando/instalada

  2. ¿Qué intérprete de Shell ejecuta un script sin Shebang?

  3. Linux:¿cómo identificar qué distribución de Linux se está ejecutando?

  4. ¿Cómo verificar qué shell estoy usando?

  5. Edite el script de shell mientras se está ejecutando

¿Qué shell estoy usando?

¿Qué shell debo usar:Tcsh Vs Bash?

Shell - ¿Cómo encontrar el directorio de algún comando?

¿Puede Python detectar con qué sistema operativo se está ejecutando?

¿En qué idioma están escritos los comandos de Shell?

Identificar qué MTA se está ejecutando