先來一張美圖
1 zsh 介紹
#########1.1 Linux shell##########Linux/Unix 提供了許多Shell,為毛要這麼多Shell? ######難道用來炒著吃麼?那我問你,你同類型的衣服怎麼有那麼多件?花色,質地還不一樣。寫程式比買衣服複雜多了,而且程式設計師往往負責把複雜的事情搞簡單,簡單的事情搞複雜。牛程式設計師看到不爽的Shell,就會自己重新寫一套,慢慢形成了一些標準,常用的Shell 有這麼多種,sh、bash、csh 等,想知道你的系統有幾種shell,可以透過以下命令查看:###cat /etc/shells
Zsh 是一個Linux 下強大的shell, 由於大多數Linux 產品安裝,以及預設使用bash shell
, 但絲毫不影響極客們對zsh 的熱衷, 幾乎每一款Linux 產品都包含有zsh,通常可以用apt-get、urpmi 或yum 等套件管理器進行安裝
Zsh 具有以下主要功能
開箱即用、可編程的命令列補全功能可以幫助使用者輸入各種參數以及選項
在使用者啟動的所有shell 中共享命令歷史
#透過擴展的檔案通配符,可以不利用外部命令達到find 指令一般會展開檔名
改進的變數與陣列處理
在緩衝區中編輯多行命令
多種相容模式,例如使用/ bin/sh 運行時可以偽裝成Bourne shell
#可以定制呈现形式的提示符;包括在屏幕右端显示信息,并在键入长命令时自动隐藏
可加载的模块,提供其他各种支持:完整的 TCP 与 Unix 域套接字控制,FTP 客户端与扩充过的数学函数
完全可定制化
之前是因为看到这篇文章:终极 Shell——Zsh 才选择使用 zsh,被它的自动完成、补全功能吸引了。官网:www.zsh.org
选择 oh-my-zsh, oh-my-zsh 是基于 zsh 的功能做了一个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果。
在 Github 上找关于 zsh 的项目时发现的,试用了一下觉得很方便,不用像上面文章里面提到的那么复杂,配置一些插件的名称即可使用相应的功能。
牛逼啊!接私活必备的 N 个开源项目!赶快收藏
官网:https://github.com/robbyrussell/oh-my-zsh
对于一般的 Ubuntu 系统,配置好正确的源之后,就能直接键入以下命令安装:
sudo apt-get install zsh
zsh 的配置是一门大学问,这里不赘述,直接给出一个配置文件,大家可以下载后放入 zsh 配置文档直接使用。(我的一个法国朋友手配的,相当顺手)
把. zshrc 拷贝到相应用户的 home 目录即可(也可以把你的 bash 的配置文件 (~/.bash_prorile 或者~/.profile 等) 给拷贝到 zsh 的配置文件~/.zshrc 里,因为 zsh 兼容 bash)
sudo usermod -s /bin/zsh username
或者
chsh -s /bin/zsh
chsh -s `which zsh`
如果要切换回去 bash:
chsh -s /bin/bash
当然你实在不愿意把 zsh 当成默认的 shell, 而又想使用它, 那么你可以每次进入是都使用zsh
进入, 而输入exit
退出
直接用 zsh 会很蛋疼,因为 zsh 功能很强大但是太复杂,所以需要 oh-my-zsh 来将它简单化。另外,搜索公众号Linux就该这样学后台回复“Linux”,获取一份惊喜礼包。
直接用 git 从 github 上面下载包
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
备份已有的 zshrc, 替换 zshrc
cp ~/.zshrc ~/.zshrc.origcp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
直接使用脚本安装
cd oh-my-zsh/tools./install.sh
你可以直接直接使用如下命令安装
curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
wget
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
其本质就是下载并执行了 github 上的 install.sh 脚本, 该脚本位于oh-my-zsh/tools/install.sh
配置主题
oh-my-zsh 集成了大量的主题, 位于 oh-my-zsh/theme
配置主题, 可以通过修改~/.zshrc
中的环境变量ZSH_THEME
来完成
ZSH_THEME="agnoster" # (this is one of the fancy ones)
如果你觉得主题太多你可以选择使用随机模式, 来由系统随机选择
ZSH_THEME="random" # (...please let it be pie... please be some pie..)
详细的主题信息, 可以参见 zsh 主题介绍
配置插件
修改~/.zshrc
中plugins
plugins=(git bundler osx rake ruby)
详细的插件信息, 可以参见 zsh 插件 Plugins 介绍
更新 oh-my-zsh
默认情况下, 您将被提示检查每几周的升级. 如果你想我 ZSH 自动升级本身没有提示你, 修改 `~/.zshrc。另外,搜索公众号顶级算法后台回复“算法”,获取一份惊喜礼包。
disable_update_prompt = true
禁用自动升级, 修改~/.zshrc
disable_auto_update = true
当然你也可以选择手动更新
如果你想在任何时间点升级(也许有人刚刚发布了一个新的插件,你不想等待一个星期?) 你只需要运行:
upgrade_oh_my_zsh
卸载 oh-my-zsh
如果你想卸載oh-my-zsh
, 只需要執行uninstall_oh_my_zsh zsh
, 從命令列運行. 這將刪除本身和恢復你以前的bash 或zsh 配置.
以上是Linux 超漂亮的 Shell的詳細內容。更多資訊請關注PHP中文網其他相關文章!