shell之zsh

什么是shell

    Shell是操作、访问Linxu\Unix系统的接口;或者说是提供访问系统内核服务的程序。

    一张图定位shell的功能角色:

alt img

enable -a可以查看所有内部命令

常用的shell:cat /etc/shells 可以看到

root@debian:~# cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

而我们今天要介绍的是一个强大的shell,他就是zsh(号称终极shell)

选择zsh的理由

- zsh完全兼容bash

bash的语法可以用在zsh环境, 以前的运维脚本可以正常运行,不过我还是喜欢加上#!/bin/bash 去解释脚本。

- zsh 的补全模式更方便、智能

zsh 中按两下 tab 键可以触发 zsh 的补全,可以用方向键进行选择控制。</br> 支持路径、命令、参数等的补全。 如

kill emacs
# 按下 tab,变成:
kill 59683

- 增强了alias功能

不仅支持普通的alias,还可以支持文件类型的alias,如:</br> alias -s py=vi 在 zsh 下直接输入xxx.py,将自动使用vi打开。

- 强大的目录切换功能

输入d,会有意想不到的效果。。。

- 增强的历史记录

当你执行很多命令后,你可以只打出命令部分,如ls,然后上下方向键,就可以找到相关记录。

zsh安装

apt-get install zsh

yum install zsh

zsh自定义配置

zsh的插件托管在git上https://github.com/robbyrussell/oh-my-zsh

支持各种私人定制,修改/root/.zshrc ,

个人比较喜欢ys主题(即ZSH_THEME=”ys”),所有主题在 /root/.oh-my-zsh/themes目录下。

注:修改完配置文件后, source /root/.zshrc即时生效

Table of Contents