Bash-对-感到厌倦-Linux中更改默认-教你如何在-Shell
Bash 并不是您唯一的 Shell 选择。还有许多其他 Shell 可供使用,每个 Shell 都有一些独特的特性。这些 Shell 包括 Zsh、Fish、Ksh 和 Xonsh。您可以在系统中同时安装多个 Shell。
如何更改默认 Shell
要将另一个 Shell 设置为默认 Shell,您可以使用
chsh
命令并传入 Shell 二进制文件的路径:
chsh -s path_to_binary_of_shell
要查找 Shell 的二进制路径,您可以查看
/etc/shells
文件的内容。或者,您还可以使用以下命令自动检索所需的 Shell 二进制路径:
chsh -s $(which new_shell)
识别当前 Shell
有多种方法可以帮助您找出您当前正在使用哪个 Shell,尽管专家可能会争论这些方法的准确性。最常用也是最简单的方法是:
$0
$0
是一个特殊的 Shell 变量,可以获取您正在使用的 Shell 或 Shell 脚本的名称(如果您在脚本中使用它)。您还可以使用以下命令检查进程:
ps ocomm | grep $PPID
其中
$PPID
代表的是当前进程/Shell 的进程 ID。
安装新 Shell
与其他软件包一样,大部分流行的 Shell(例如 Fish 和 Zsh)都可以直接从您的发行版软件仓库下载并安装。较新的、相对小众的 Shell(例如 Xonsh)可能需要不同的安装步骤。您可以在它们的项目网页上找到具体的安装指南。
例如,如果您想在 Ubuntu 上安装 Zsh,则可以使用以下命令:
sudo apt install zsh
更改当前 Shell
假设您已经安装了另一个 Shell,让我们看看如何切换过去。实际上,您只需要输入新 Shell 的名称即可。例如,如果您想切换到 Zsh,请输入:
zsh
要退出当前 Shell,只需输入
exit
即可,您将返回到默认 Shell。
查看默认 Shell
有一个环境变量可以告诉您当前帐户的默认 Shell 是什么:
echo $SHELL
例如,我切换到了 Zsh。此时,当前 Shell 显示的信息是
zsh
,而默认 Shell 仍然显示为
/bin/bash
:
$ echo $SHELL
zsh
$
这表明更改 Shell 不会更改默认 Shell。这意味着,下次您再次登录到该终端或系统时,您仍会返回到旧的默认 Shell,而不是新的 Shell。
查看系统中可用的 Shell
您可以通过查看
/etc/shells
文件来了解系统中具有哪些可用的 Shell:
cat /etc/shells
以下是我当前系统中所有可用的 Shell:
/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
更改默认 Shell
/etc/shells
文件的内容显示了所有可用 Shell 的二进制文件位置。您需要将它与
chsh
命令一起使用。假设我想让 Zsh 成为默认 Shell,我可以输入:
chsh -s /usr/bin/zsh
更改后,您需要重新登录才能看到更改。请注意,以上操作只会更改当前用户的默认 Shell。如果您是管理员,并且想更改其他用户的默认 Shell,那么您可以使用以下命令:
sudo chsh -s /usr/bin/zsh other_username
结论
用户选择是 Linux 的一大特色。您可以根据自己的需要进行更改。这是一个例子,您不必局限于发行版提供的默认 Shell 的选择。欢迎您自选一款 Shell,让您的工作变得更顺手。
如何修改.bash
用户默认shell保存在文件/etc/passwd中,修改该文件对应用户的Shell字段才能修改默认Shell。 可以用chsh命令完成这一修改。 还可以直接输入想要的shell名称(csh、ash、ksh等)来临时更改shell,exit退出该临时shell。
Linux命令提示符如何按照自己的习惯修改?
原本的 [root@localhost ]$ 看久了难免让人厌倦。 如果按自己的习惯修改,既能看着舒服,又能提高“逼格”。 下面小编就为大家详细介绍Linux命令提示符如何按照自己的习惯修改方法,希望能对大家有所帮助! 美化Bash1、在目录下:vim 注意:别漏了那个点。 然后写写入内容到最后面:export PS1=u:w $注意:等号的两端没有空格。 修改好了之后,保存并退出。 如果你本身没有,那么复制下列内容进去即可。 # [ -f /etc/bashrc ]; then. /etc/bashrcfiexport PS1=u:w $ 2、现在来解释下:export PS1=u:w $u表示用户名w表示显示全路径(家目录仍然简记为“~”,例如 ~/bin/test)W表示显示当前路径的Basename(例如 test)h表示host(就是原来的localhost)$表示提示符表示反斜杠更多的内容可以使用:man bash然后查找PS1(如下图,你可以进行各种设置)。 3、最后说一说颜色设置的问题。 你可以把上面的u之类的东西放在:[e[1;34m]u[e[m]这样的东西里面。 它就有颜色了。 看起来很复杂,其实你可以认为它就是个括号。 把东西括在里面就有颜色。 里面的数字用来设置颜色。 例如我设置:[e[1;34m]u[e[m]:w $那么如下图: 4、前面的1表示高亮,后面的数字是颜色。 以下我测试了几组颜色以供参考。 换个Shell1、美化Bash固然很好。 你也可以干脆换个Shell来体验。 比如小编使用的Zsh,如图。 2、图为zsh的配置文件的的截图,它和类似,但是语法和功能不同,zsh的功能更加强大,你可以到官方网站或者技术博客学习更多zsh的使用方法。 注意:一定要使用Oh-my-zsh插件来增强你的zsh,具体方法:wget-O - | sh 注意事项除了zsh外,fish也是很优秀的shell。
免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。