1

Я попытался запустить tcsh на моем Fedora 7 (оболочка по умолчанию bash)

[ss@ssvm ~]$ tcsh
[ss@ssvm ~]$ echo $SHELL
/bin/bash

Как видите, началась другая оболочка bash.

Я посмотрел на файл tcsh:

[ss@ssvm ~]$ ll /bin/tcsh
-rwxr-xr-x 1 root root 345348 2007-02-26 23:58 /bin/tcsh
[ss@ssvm ~]$ ll /bin/csh
lrwxrwxrwx 1 root root 4 2010-03-07 13:13 /bin/csh -> tcsh

Это не ссылка (но csh есть). Я не понимаю, почему это происходит. Пожалуйста, дайте мне знать, если у вас есть идеи или вам нужна дополнительная информация. Спасибо!

XM

3 ответа3

5

Краткий ответ: переменная среды SHELL представляет оболочку по умолчанию для вашего профиля пользователя, а не оболочку, с которой вы сейчас общаетесь. Используется программами, которые порождают подоболочки.

Кроме того, проверьте ваш .cshrc для команды exec bash . Я делал это на сайте, где пользователям не разрешалось менять оболочку по умолчанию с csh.

0

tcsh устанавливает строчную переменную с именем shell:

prompt> echo $shell
/usr/bin/tcsh
0

попробуйте выполнить echo $ 0, который даст текущее имя вашей оболочки. см. это для получения дополнительной информации о смене оболочек

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .