从 tcsh 更改为 bash?

Changing from tcsh to bash?

我在使用某些 shell 命令时遇到困难,我认为这是由于我的 shell 设置为 BASH 失败所致。

以下命令解决了我的问题:

bash --login

或直接输入

bash

因此,我似乎需要将我的 shell 重新配置为 bash,这应该很简单。我的默认 $SHELL 变量是 /bin/bash

我认为这是由于我的终端首选项中的以下设置所致:

run a custom command instead of my shell 
/bin/tcsh/

为什么我的 shell 首选项要设置成这个,tcsh 的 advantage/use 比 bash 是什么?

此外,我应该如何解决这个问题,同时仍然保留使用可能依赖于此默认终端首选项的任何功能 (/bin/tcsh)

这是我的一些系统信息:

Ubuntu 14.02
$SHELL 
/bin/bash
$BASH_VERSION
undefined variable

我以前使用以下命令从 DASH 更改为 BASH:

sudo dpkg-reconfigure dash

我之前也用过下面的命令:

sudo apt-get install csh

我怀疑你已经设置了/bin/bash,但如果没有,我帮你改一下:

用户的默认 shell 设置在 /etc/passwd 内(通常)。
您可以通过以下操作查看为您设置的设置:

grep "user" /etc/passwd

其中 user 是您在系统中的用户名。最后一个值(在最后一个“:”之后)是 shell 设置的值,供您使用。您可以通过两种方式更改它,或者通过编辑文件,或者更简单地执行 "chsh"(这意味着:"change login shell"):

$ chsh

它会询问您的密码,然后询问您要使用的 shell,只需输入“/bin/bash”。

完成。要使更改应用于所有程序,只需注销并重新登录。

第二级配置属于包含控制台的 window。我怀疑您正在使用 gnome-terminal(通常用于 Ubuntu)。如果不是,那么它可能是 konsole(对于 KDE 桌面)。在其中任何一个中,检查配置是否未设置为调用 "tcsh"。如果需要,请说出您正在使用哪个 console/terminal 提供提示。