Linux及MacOSX中使用zsh
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
其他
- oh-my-zsh中不同的theme可能需要不同的font,可以在powerline-fonts中下载
- 通过远程登录zsh的服务器时,zsh中的特殊符号不能正常显示,这个问题还没有解决
引用:
- MacOSX shell 改用 zsh
- oh-my-zsh中文乱码问题
- 终极 Shell
- zsh
- oh-my-zsh
- Zsh Workshop: Table of Contents
- powerline-fonts
Written with LeoChin.
Linux及MacOSX中使用zsh的更多相关文章
- 基於tiny4412的Linux內核移植--- 中斷和GPIO學習(3)
作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uIma ...
- linux top命令中各cpu占用率含义
linux top命令中各cpu占用率含义 [尊重原创文章摘自:http://www.iteye.com/topic/1137848]0.3% us 用户空间占用CPU百分比 1.0% sy 内核空间 ...
- dos2unix,去掉Linux下文件中的^M
Windows系统下使用VS2010编写好的CPP文件,想放到Linux上进行编译.发现Linux上文件中的每行代码末尾都跟着^M这个符号. 为什么同一份文件在windows上和Linux上显示的不一 ...
- Linux在Hyper-V中实现与Windows的宽带共享上网
相信不少读者都会做(或者曾经做过)这么一项活动——把一个Linux系统安装到Windows系统下的虚拟机软件中,然后在Windows这个大环境中对Linux进行学习或者一些实验操作.在进行这么一项活动 ...
- linux c程序中获取shell脚本输出的实现方法
linux c程序中获取shell脚本输出的实现方法 1. 前言Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作. ...
- Linux 多线程应用中如何编写安全的信号处理函数
http://blog.163.com/he_junwei/blog/static/1979376462014021105242552/ http://www.ibm.com/developerwor ...
- linux free命令中buffer与cache的区别
linux free命令中buffer与cache的区别 2012-05-15 个评论 收藏 我要投稿 linux free命令中buffer与cache的区别 ~$ ...
- 【转】linux设备驱动程序中的阻塞机制
原文网址:http://www.cnblogs.com/geneil/archive/2011/12/04/2275272.html 阻塞与非阻塞是设备访问的两种方式.在写阻塞与非阻塞的驱动程序时,经 ...
- Linux內核中常用的一些延時方法
Linux內核中常用的一些延時方法 這些方法在以下路徑下定義:kernel/include/linux/delay.h #ifndef _LINUX_DELAY_H #define _LINUX_DE ...
随机推荐
- Java上传文件FTP服务器代码
1. 在实际的应用重,通常是通过程序来进行文件的上传. 2. 实现java上传文件到ftp服务器中 新建maven项目 添加依赖 <dependency> <groupId>c ...
- Node.js ECONNREFUSED错误
1 现象 node服务器 遇见此错误,如下:events.js:71throw arguments[1]; // Unhandled 'error' event^Error: connect ECON ...
- pyspark遇到报错:_PYSPARK_DRIVER_CONN_INFO_PATH
1. 环境 : centos,启动pyspark,执行如下python命令: import pyspark from pyspark import SparkContext from pyspark ...
- better-scroll插件
参考网址:慕课网 http://coding.imooc.com/lesson/74.html#mid=1640 这个详细:https://zhuanlan.zhihu.com/p/25369923 ...
- labelImg:no module named pyqt4
最新版的labelImg安装会出错,改变环境变量,在python3.5中就可以了 参考 shaform :https://github.com/tzutalin/labelImg/issues/106
- 前端工程化-webpack简介(一)
本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependenc ...
- Laravel Blade 模板 @section/endsection 与 @section/show, @yield 的区别
base layout 中需要使用 @section("section_name") 区块链是什么? @show 继承的 blade 中需要使用 @section("se ...
- VS2008/2005 MFC程序调试经验
我的VS2008不知道是有bug还是自己的问题,很多时候变量定义后CTRL+F5运行却没反应,一定要“生成解决方案”下才行? 1.没有可用于当前位置的源代码 将工具->选项->调试-> ...
- String中的toCharArray:将此字符串转换为新的字符数组,并统计次数
package stringyiwen; public class StringTestToCharArray { public static void main(String[] args) { S ...
- js创建、写入、读取文件(转)
下面是对此知识的系统介绍(转自互联网): Javascript 是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼.富有朝气.但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和 ...