via : http://leochin.com/linux-macosx-shell-zsh/

Linux及MacOSX中使用zsh

zsh是另一种Shell,类似bash,tcsh等等,只是多了一些人性化的功能, ex: Tab 按两下, 会将档案、目录等变成可以选取的模式,选完后会自动补齐命令.还有错误的命令或者资料夹等等, 会询问是否打错, 自动纠正.

zsh详细说明: Zsh Workshop: Table of Contents

上述的都不重要, 最重要的是有 oh-my-zsh 的插件可以使用. (简单说, 若沒有 oh-my-zsh, 那 zsh 一点吸引力都没有)

oh-my-zsh 将之前配置文件, 用外挂的方式挂进去, 可以轻松的站在巨人的肩膀上. (而且 theme 有很多可以挑选)


将 MacOSX / Linux 用的 Shell 改用 zsh

1. 安装zsh

Debian / Ubuntu Linux 需要安裝: apt-get install zsh

Mac 预设就有 zsh 了~

安装完 zsh 后, chsh -s /bin/zsh 即可.

NOTES:

chsh -s /bin/zsh # 设定为 default shell

相关设定: .zshenv, .zprofile, .zshrc, .zlogin

2. 安裝使用 oh-my-zsh

cd ~/

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

cp ~/.zshrc ~/.zshrc.orig

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

配置zsh时需要修改.zshrc文件。

//修改theme

#export ZSH_THEME="steeef"

export ZSH_THEME="afowler"

更多的themes在.oh-my-zsh/themes中

//修改插件

plugins=(git osx) # 啟用 git, osx 的 plugin

更多plugins可以參考~/.oh-my-zsh/plugins

3. 中文乱码问题

在终端下输入

vim ~/.zshrc

或者使用其他你喜欢的编辑器编辑~/.zshrc

在文件内容末端添加:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

接着重启一下终端,或者输入 source ~/.zshrc


其他


  1. oh-my-zsh中不同的theme可能需要不同的font,可以在powerline-fonts中下载
  2. 通过远程登录zsh的服务器时,zsh中的特殊符号不能正常显示,这个问题还没有解决

引用:


  1. MacOSX shell 改用 zsh
  2. oh-my-zsh中文乱码问题
  3. 终极 Shell
  4. zsh
  5. oh-my-zsh
  6. Zsh Workshop: Table of Contents
  7. powerline-fonts

Written with LeoChin.

Linux及MacOSX中使用zsh的更多相关文章

  1. 基於tiny4412的Linux內核移植--- 中斷和GPIO學習(3)

    作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uIma ...

  2. linux top命令中各cpu占用率含义

    linux top命令中各cpu占用率含义 [尊重原创文章摘自:http://www.iteye.com/topic/1137848]0.3% us 用户空间占用CPU百分比 1.0% sy 内核空间 ...

  3. dos2unix,去掉Linux下文件中的^M

    Windows系统下使用VS2010编写好的CPP文件,想放到Linux上进行编译.发现Linux上文件中的每行代码末尾都跟着^M这个符号. 为什么同一份文件在windows上和Linux上显示的不一 ...

  4. Linux在Hyper-V中实现与Windows的宽带共享上网

    相信不少读者都会做(或者曾经做过)这么一项活动——把一个Linux系统安装到Windows系统下的虚拟机软件中,然后在Windows这个大环境中对Linux进行学习或者一些实验操作.在进行这么一项活动 ...

  5. linux c程序中获取shell脚本输出的实现方法

    linux c程序中获取shell脚本输出的实现方法 1. 前言Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作. ...

  6. Linux 多线程应用中如何编写安全的信号处理函数

    http://blog.163.com/he_junwei/blog/static/1979376462014021105242552/ http://www.ibm.com/developerwor ...

  7. linux free命令中buffer与cache的区别

    linux free命令中buffer与cache的区别 2012-05-15      个评论       收藏    我要投稿 linux free命令中buffer与cache的区别   ~$ ...

  8. 【转】linux设备驱动程序中的阻塞机制

    原文网址:http://www.cnblogs.com/geneil/archive/2011/12/04/2275272.html 阻塞与非阻塞是设备访问的两种方式.在写阻塞与非阻塞的驱动程序时,经 ...

  9. Linux內核中常用的一些延時方法

    Linux內核中常用的一些延時方法 這些方法在以下路徑下定義:kernel/include/linux/delay.h #ifndef _LINUX_DELAY_H #define _LINUX_DE ...

随机推荐

  1. Springboot分模块开发

    这是个spring cloud项目,service-base:基础服务:service-config:配置中心:service-entity:实体类: service-gateway:服务网关:ser ...

  2. 解决报错SAXNotRecognizedException: Feature 'http://javax.xml.XMLConstants/feature/secure-processing' not recognized

    今天调试appium脚本,发现运行脚本就报错 SAXNotRecognizedException: Feature 'http://javax.xml.XMLConstants/feature/sec ...

  3. Jmeter接口测试参数化实例图文示例

    在实际测试中,不可能查询值测试一个输入值,还有其他测试数据,故引入参数化的概念,让一条用例循环执行,直到所有测试数据均测试完成,如下示例: Jmeter参数化有4种方法,本例仅介绍最普遍及简单的1个方 ...

  4. LeetCode | Reverse Words in a String(C#)

    题目: Given an input string, reverse the string word by word. For example,Given s = "the sky is b ...

  5. scanf的一个问题(暂未解决)

    如下代码,没有按照预想的那样运行: int a; char b; printf("input a integer\n"); scanf("%d", &a ...

  6. pika的阻塞式使用

    [root@cloudplatform ELK]# cat startIncHouTai.py import os # 杀掉内存中的进程 cmd='pgrep -f PutDataToKafkaInc ...

  7. Oracle回收站的清理方法

    http://blog.itpub.net/18841027/viewspace-1057765/

  8. POJ 3616 Milking Time 【DP】

    题意:奶牛Bessie在0~N时间段产奶.农夫约翰有M个时间段可以挤奶,时间段f,t内Bessie能挤到的牛奶量e.奶牛产奶后需要休息R小时才能继续下一次产奶,求Bessie最大的挤奶量.思路:一定是 ...

  9. js随机生成颜色的方法

    function getRandomColor() { return '#' + (Math.random() * 0xffffff << 0).toString(16); }

  10. Trident Topology开发Demo

    1.项目结构 · 2.启动的服务 无 3.驱动程序 package com.jun.trident; import backtype.storm.Config; import backtype.sto ...