Mac安装zsh及工具

首先确保你安装了brew,未安装的请参考此文:Mac安装Homebrew以及使用

安装zsh

brew install zsh zsh-completions

验证是否安装成功

我们可以在命令行中输入这个命令来查看我们的电脑上是否安装了zsh命令行

$ zsh --version

安装oh my zsh

前提条件:必须已安装ZSH

我们可以在命令行中输入这个命令来查看我们的电脑上是否安装了zsh命令行

$ zsh --version

如果安装了,这个命令就会输出zsh当前的版本号。确定 zsh 已经安装后,我们就可以继续安装Oh My Zsh了。

安装Oh My Zsh

Oh My Zsh 的安装方式非常简单,可以通过curl或wget的方式,用一条命令即可安装。

curl 方式

$ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

wget 方式

$ sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

安装过程中输出如下

到这里,Oh My Zsh 就安装成功了。

Oh My Zsh目录结构

进入~/.oh-my-zsh目录后,看看该目录的结构

cache  custom  lib  log  MIT-LICENSE.txt  oh-my-zsh.sh  plugins  README.markdown  templates  themes  tools

lib 提供了核心功能的脚本库

tools 提供安装、升级等功能的快捷工具

plugins 自带插件的存在放位置

templates 自带模板的存在放位置

themes  自带主题文件的存在放位置

custom 个性化配置目录,自安装的插件和主题可放这里

设置主题

安装完毕后,我们就可以使用了,咱们先来简单配置一下。

Oh My Zsh 提供了很多主题风格,我们可以根据自己的喜好,设置主题风格,主题的配置在 ~/.zshrc 文件中可以看到,用一个自己熟悉的编辑器打开这个文件,可以找到这一项:

ZSH_THEME="robbyrussel"

可以看到,我们默认使用的主题叫做robbyrussel。 它的显示效果嘛,大概是这样

Oh My Zsh默认自带了一些默认主题,存放在~/.oh-my-zsh/themes目录中。我们可以查看这些主题

3den.zsh-theme                essembeh.zsh-theme            junkfood.zsh-theme            rgm.zsh-theme Soliah.zsh-theme              evan.zsh-theme                kafeitu.zsh-theme            risto.zsh-theme adben.zsh-theme              example.zsh-theme            kardan.zsh-theme              rixius.zsh-theme af-magic.zsh-theme            fino-time.zsh-theme          kennethreitz.zsh-theme        rkj-repos.zsh-theme afowler.zsh-theme            fino.zsh-theme                kiwi.zsh-theme                rkj.zsh-theme agnoster.zsh-theme            fishy.zsh-theme              kolo.zsh-theme                robbyrussell.zsh-theme alanpeabody.zsh-theme        flazz.zsh-theme              kphoen.zsh-theme              sammy.zsh-theme amuse.zsh-theme              fletcherm.zsh-theme          lambda.zsh-theme              simonoff.zsh-theme apple.zsh-theme              fox.zsh-theme                linuxonly.zsh-theme          simple.zsh-theme arrow.zsh-theme              frisk.zsh-theme              lukerandall.zsh-theme        skaro.zsh-theme ....

这么多的主题可以满足你的各种偏好了,我们只需在./zshrc文件中配置需要的主题即可,比如我们想用lambda.zsh-theme这个主题,我们只要这样配置  ZSH_THEME="lambda"

然后保存这个文件文件,再打开一个新的命令行窗口即可看到效果了。那么这么多的主题如何快速找到哪些是我们喜欢的呢,我们还可以这样设置 ZSH_THEME="random"

我们将主题设置为随机,这样在我们每次打开命令行窗口的时候,都会随机在默认主题中选择一个。这样我们如果觉得当前的主题比较喜欢,可以直接使用 echo 命令输出当前主题的名称  $ echo $ZSH_THEME

 

更新oh-my-zsh

设置自动更新oh-my-zsh

默认情况下,当oh-my-zsh有更新时,都会给你提示。如果希望让oh-my-zsh自动更新,在~/.zshrc 中添加下面这句

DISABLE_UPDATE_PROMPT=true

要手动更新,可以执行

$ upgrade_oh_my_zsh

卸载oh my zsh

直接在终端中,运行uninstall_oh_my_zsh既可以卸载。

参考文档

http://www.google.com

http://ohmyz.sh/

http://swiftcafe.io/2015/10/31/cafe-time-omz/

 

安装zsh后,终端mvn命令不能用问题解决

刚开始装maven时,我们会把mvn的环境变量配置在~/.bash_profile文件中,而当你安装zsh后,会发现mvn命令不起作用了,好像没有装一样。其原因还是在启动linux或终端时各个配置文件的先后加载问题及作用域问题。先来看如何解决上面的问题

先打开.zshrc文件,加入mvn的环境变量配置

export MAVEN_HOME=/Users/yangzeyi/Platform/install/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

然后按esc键后,输入命令:wq进行保存退出,记住冒号不可少。重启终端,会发现mvn命令可用。

 

那为什么会出现这种原因呢,是因为这些系统文件会存在一个优先执行顺序,首先在登录时,先执行的是/etc/profile文件。

然后在启动用户目录下的~/.bash_profile、~/.bash_login或~/.profile文件中的其中一个,执行顺序为~/.bash_profile、~/.bash_login、~/.profile。如果~/.bash_profile文件存在的话,一般还会执行~/.bashrc文件。若要退出shell时还会执行~/.bash_logout文件。

    所以不难发现,当在zsh下执行各项命令时,此时~/.zshrc文件则已经执行呢。而~/.bash_profile文件没有执行,所以在其中配置的mvn参数不会加载。其实有两种方法可以解决,一种是楼主上面操作的方法,还有一种与第一种类似,就是在~/.zshrc文件中加入source  ~/.bash_profile命令即可。原理都是一样,即是在执行zsh相关的文件时会加载到mvn的相关配置。

   简单介绍一下各个文件的作用域:

         (1)/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。并从/etc/profile.d目录的配置文件中搜集shell的设置。

         (2)/etc/bashrc:为每一个运行bash shell的用户执行次文件。当bash shell被打开时,该文件被读取。

         (3)~/.bash_profile:每个用户都可以使用该文件输入专用与自己使用的shell信息,当用户登录时,该问价仅仅执行一次,默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

         (4)~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该 文件被读取。

         (5)~/.bash_logout:当每次退出系统时(退出bash shell),执行该文件。另外,/etc/profile中设定的变量可以作用于任何用户,而~/.bashrc等中设定的变量只能继承/etc/profile中的变量,是“父子”关系。

         (6)~/.bash_profile是交互式、login方式进入bash运行的~/.bashrc是交互式non-login方式进入bash运行的通常二者设置大致相同,所以通常前者会调用后者。

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值