当前位置: 首页 > 科技观察

如何在Linux中更改Shell

时间:2023-03-17 21:30:55 科技观察

我们都知道Linux有多种可用的shell,其中bash是几乎所有Linux发行版的默认shell,除此之外,还有一些其他比较流行的shell,比如:kshzshfishcshdash一些shell提供了一些非常友好的功能。以fishshell为例,它可以对你输入的命令进行提示,这对于经常记不住Linux终端快捷键的人来说非常方便。如何查看系统默认shell要查看Linux系统中的默认shell,可以检查shell环境变量。例如,如果shell是bash,那么环境变量会显示如下:$echo$SHELL/bin/bash如何查看当前使用的shell目前,没有办法100%告诉你正在使用哪个shell。但是我们可以尝试命令echo$0,它将显示如下输出:$echo$0zsh或使用ps-p$$来检查这样的过程:$ps-p$$PIDTTYTIMECMD9625pts/000:00:00zsh如何查看Linux系统中所有可用的shellLinux系统中所有可用的shell都列在/etc/shells文件中,我们可以使用cat命令或者less命令查看文件内容:$/etc/shells:有效的登录shells/bin/sh/bin/bash/bin/rbash/bin/dash/usr/bin/tmux/usr/bin/fish/bin/zsh/usr/bin/zsh如何切换shells如果你想切换到另一个Ashell,只需要输入它的名字就可以登录到一个新的shell。比如你安装了zsh,想使用它,只需要执行命令:zsh切换到新的shell后,如果想退出,可以输入exit,这样就可以回到之前的shell了。Linux中如何永久更改默认shell如果你非常喜欢fishshell,想将其设置为默认shell,那么在系统中每次打开终端或者ssh,都会使用fishshell,而不是默认的庆典外壳。为此,我们可以使用chsh命令更改默认shell。具体使用方法是在chsh命令后使用-s选项设置/etc/shells文件中列出的shell名称,如下:chsh-s/usr/bin/fish执行上述命令后,系统需要重新启动。请注意,上述命令中的-s选项后跟/etc/shells文件中列出的shell的完整路径。如果我使用chsh-sfish,我会得到一个错误:“chsh:fishisaninvalidshell”。以上就是本次分享的全部内容,欢迎讨论。