在Linux上安装zsh

简介:

相对于绝大多数linux发行版默认的shell--bash,zsh绝对是一个优秀的替代品.zsh是交互型shell,同时它也是一个强大的编程语言,许多bash,ksh,tcsh优秀的地方在zsh都被实现.同时zsh有许多原生的优秀特点.

诞生:

Paul Falstad 在1990年发布了zsh的第一版,当时他还是Princeton University的一名学生.

名字的来源:

这个名字来自耶鲁大学的Zhong Shao教授,那时他在Princeton University做助教.Paul Falstad认为Shao的登录名"zsh"做为1个shell的名字挺合适的.于是zsh这个名字诞生了

安装:

本文以ubuntu10.10发行版为蓝本.

sudo apt-get install zsh

第一次运行

第一次运行时你会得到下列输出

This is the Z Shell configuration function for new users,zsh-newuser-install.  

You are seeing this message because you have no zsh startup files(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory~). This function can help you with a few settings that shouldmake your use of the shell easier.  

You can:  

(q) Quit and do nothing. The function will be run again next time.  

(0) Exit, creating the file ~/.zshrc containing just a comment.That will prevent this function being run again.  

(1) Continue to the main menu.  

(2) Populate your ~/.zshrc with the configuration recommended by the system administrator and exit (you will need to edit the file by hand, if so desired).

因为是第一次运行,所以会出现配置界面.我们在这里暂时先选择0,以便实现随后的定制.

特色

Tab补全

zsh实现了全面可编程化的补全方式,允许用户让shell自动补全各种命令的参数(即使那些与shell本身无关的命令), 自动填充shell的许多转换的定义以及许多恰当的参数类型.比如:输入tar xvf ,然后Tab键,系统会自动选择tar.gz文件,略过那些不符合的.现在zsh默认有500多个补全定义

实现方法:

%autoload -U compinit  

%compinit

更高级的补全:

% zstyle ‘:completion:*:descriptions‘ format ‘%U%B%d%b%u‘ 

% zstyle ‘:completion:*:warnings‘ format ‘%BSorry, no matches for: %d%b‘

它可以自动补全命令、参数、文件名、进程、用户名、变量、权限符等。

选择提示符

zsh有许多默认的提示符主题.首先你要初始化高级提示符支持

%autoload -U promptinit  

%promptinit

查看可用的提示符主题: prompt -p

这里我选择 promot elite2 red

定制历史信息:

这里我们设置记录命令历史文件位~/.histfile,在当前shell中记录1000个命令,在shell关闭后保存使用过的最后1000个命令

HISTFILE=~/.histfile  

HISTSIZE=1000  

SAVEHIST=1000

如果你不想保存重复的历史

setopt hist_ignore_all_dups hist_ignore_space

自动化的CD命令

zsh允许你仅仅敲入你要进入的文件夹的路径,而不用输入cd.比如你要进入/etc/init.d

首先打开autocd选项 setopt autocd

然后输入 /etc/init.d 回车即可进入文件夹中

扩展的文件名替换通配符

文件名替换实现了在展开文件通配符,来出一些特定的文件.广大的shells一直都在使用文件名替换.比如:

%ls foo*  

foo1 foo2

强大的重定向功能:

同时重定向stdout和stderr到file: command |& >file 同时重定向到多个文件: command >file.1 >file.2

zsh的确是个强大的shell,它支持许多有趣的通配符扩展.你可以使用通配符号,他们是一些有特殊意义的字符.例如:列出当前文件夹下所有的符号链接文件:

%ls *(@)

zsh的通配符包括了"/"来表示目录,"."代表普通文件.更多的man zshexpn查看.如果没有匹配,zsh返回错误.

还有其他的类型,比如"/",表示让zsh匹配当前目录及当前目录的所有子目录.例如,找到当前目录下以及子目录下的任何".sh"或者".py"文件,

%ls -l **/*.(sh|py)

让配置保持生效

为了一直使用扩展的文件名替换,将下边命令添加到~/.zshrc

autoload -Uz compinit

compinit

zstyle :compinstall filename ‘/home/capecchi/.zshrc‘

zstyle ‘:completion:*:descriptions‘ format ‘%U%B%d%b%u‘

zstyle ‘:completion:*:warnings‘ format ‘%BSorry, no matches for: %d%b‘

Prompt setup

autoload -U promptinit

promptinit

prompt elite2 yellow

History

HISTFILE=~/.histfile

HISTSIZE=1000

SAVEHIST=1000

We set some options here

setopt appendhistory autocd hist_ignore_all_dups hist_ignore

注: ~/.zshrc文件可以来自交互和登录shell。如果你希望为非交互运行的zsh(即,通过cronjob)设定选项,那么你需要把那些命令添加在~/.zshenv后面

更改用户默认的登录shell:

chsh -s /bin/zsh username  普通用户可以更改自己的,root用户则可更改所有用户的

参考:http://www.linuxaria.com/howto/introduzione-a-zsh?lang=it

http://www.builder.com.cn/2007/0328/383678.shtml

http://linuxtoy.org/archives/zsh.html

时间: 2024-12-12 21:13:12

在Linux上安装zsh的相关文章

在 Linux Mint 19 上安装 zsh 和设置小键盘一步到位

在 Linux Mint 19 上安装 zsh 和设置小键盘 安装 zsh 并设置 zsh 为默认 shell 安装 sudo apt install zsh 设置 zsh 为默认 shell,注意没有 sudo chsh -s /bin/zsh 配置密码认证 sudo vim /etc/passwd 改 /bin/bash 为 /bin/zsh 安装 oh-my-zsh 用于快速配置 zsh sh -c "$(curl -fsSL https://raw.github.com/robbyrus

在Linux上安装JDK7

查看是否安装了JDK 如果安装完毕后,jdk版本不是当前所安装的,则需要卸载之前linux自带的jdk版本,因为安装Redhat9后默认安装了jdk, 可是默认安装的jdk1.4版本比较老,所以需要先卸载掉原有的java 版本. [[email protected]]# java -version      查看安装的java版本信息 [[email protected]]# rpm -qa |grep -i java      查看存在java安装情况命令 java-1.4.2-gcj-com

在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导

Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWare或Oracle VirtualBox. 甲骨文的“c”12 c代表“ 云 ” 有一些重要和有趣的变化时安装12 c相比11 g RAC. 甲骨文似乎增加了很多新的有趣的特性在12摄氏度. 请注意,我们需要2虚拟机各有3 GB内存. 所以如果你有足够的记忆你的笔记本电脑/ PC机或服务器上,那么你

Linux上安装编译工具链

在Linux上安装编译工具链,安装它会依赖dpkg-dev,g++,libc6-dev,make等,所以安装之后这些依赖的工具也都会被安装.ubuntu软件库中这么描述 Informational list of build-essential packages If you do not plan to build Debian packages, you don't need this package. Starting with dpkg (>= 1.14.18) this package

在Linux上安装mysql数据库,我们可以去其官网上下载mysql数据库的rpm

在Linux上安装mysql数据库,我们可以去其官网上下载mysql数据库的rpm包,http://dev.mysql.com/downloads/mysql/5.6.html#downloads,大家可以根据自己的操作系统去下载对应的数据库文件,目前最新的版本是5.6.10了. 在这里我是通过yum来进行mysql数据库的安装的,通过这种方式进行安装,可以将跟mysql相关的一些服务.jar包都给我们安装好,所以省去了很多不必要的麻烦!!! http://www.baobao18.com/De

Linux 上安装 weblogic12C (静默安装) (一)

最近负责在linux上安装weblogic,领导说要安装最新的版本,版本号为 12.1.X.开始以为和旧版安装一样,使用控制台的方式,下载bin文件,然后一步步在console执行下来就行了.万万没想到,从12C版本后, bin文件不提供了,改成全系统通用的jar文件 (generic.jar).试了半天原来那种安装方式不能用了,非得用图形界面安装.由于服务器是在其他地方,肯定不能跑到主机的地址那边.于是各种google.各种找材料, 最后终于找到一种静默方式的安装.大家看下文. PS:经过公司

Linux上安装MySQL5.6

OS & MySQL的版本和配置: MySQL Version: 5.6.19 Linux Version: Linux boston.oracle.com 2.6.18-164.el5 #1 SMP Thu Sep 3 02:16:47 EDT 2009 i686 i686 i386 GNU/Linux 一,下载MySQL安装软件,请到www.oracle.com   去找DATABASE DOWNLOAD,下载MySQL需要注册一个账号.我下载的版本如下: 下载后解压就是以下的8个文件 :

Kali Linux 上安装Nessus的方法

Nessus是系统漏洞扫描与分析软件,但Nessus在Kali Linux上的安装可不简单,没有提供一个图形化的安装借口,下面就给大家介绍下如何在Kali Linux上安装Nessus.利用Iceweasel 打开http://www.tenable.com/products/nessus/select-your-operating-system 根据自己的需要下载相应的版本 Debian 6, 7, 8 / Kali Linux 1 AMD64 File: Nessus-6.10.6-debi

linux上安装php7 memcache扩展 和 安装服务端memcached

linux上安装memcached不算太困难.唯一让本人感到困难的是 php7的memcache扩展安装.真的蛋疼! 先说安装服务端 memcached 1. 首先安装Libevent事件触发管理器. wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz tar vxf libevent-2.0.21-stable.tar.gz cd libevent-2.0.21-stable ./c