我是靠谱客的博主 无辜飞机,最近开发中收集的这篇文章主要介绍linux查看是bash还是zsh,从bash转向zsh的坑,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在多位同事对我熏陶zsh有多么多么好的情况下,今天终于接着元旦放假的机会折腾了一下。

以下命令都是基于ubuntu所写,但各大linux发行版都差不多,就不废话了。安装直接apt-get即可。

配合oh-my-zsh.

wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - |sh

chsh -s /bin/zsh #切换默认shell为zsh

坑1: 上下方向键,Home和End键可能不生效

经测试tmux和gnome-terminal测试zsh没有这些问题,多发于使用xshell,putty连接ssh时会出现。

首先在zsh下面Home等效快捷键是ctrl+a,End的等效快捷键是ctrl+e。

当然也可以通过修配置文件解决。在~/.zshrc添加以下行:

bindkey "e[1~" beginning-of-line # Home键

bindkey "e[4~" end-of-line # End键

bindkey "^[[A" forward-word # 方向上键

bindkey "^[[B" backward-word # 方向下键

最坑最坑的并不是这个,而且以上配置文件并不适用于所有情况。如果你把以上配置添加到配置文件中并source后仍然不生效,此时你需要神奇的cat命令。单纯执行cat命令,并分别按Home后会输出等效的键码,复制并替换上面的bindkey命令即可,其他原理一样的。

坑2:tmux与zsh配合使用时需要注意修改tmux的默认shell

准确说这个不算坑,只是注意点。我上面使用chsh修改用户默认shell之后再进入tmux时居然还是bash,所以此时需要在tmux的配置文件里面额外添加一句set -g default-shell /bin/zsh,或者使用set -g default-shell $SHELL用以自适应用户修改的shell类型。退出所有tmux并重启tmux生效。

关于tmux参考: https://www.jianshu.com/p/42bf70c64952

坑3:~/.bashrc文件不会自动执行

这个就更坑了,我之前把当连接ssh时自动开启tmux的命令写在了~/.bashrc文件中,但是当我把默认shell修改为zsh后我发现连接ssh后并没有自动进入tmux界面。所以很有可能实用zsh进入后之前手动设置的环境变量全都不见了,转而代替的文件列表如下:

/etc/profile --> /etc/zsh/zshenv

~/.profile --> ~/.zprofile

~/.bashrc --> ~/.zshrc

最后

以上就是无辜飞机为你收集整理的linux查看是bash还是zsh,从bash转向zsh的坑的全部内容,希望文章能够帮你解决linux查看是bash还是zsh,从bash转向zsh的坑所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部