#0x0 安装zsh

原始的bash挺好,但是有更强大的zsh可用,何乐不为?

首先安装zsh

sudo apt install zsh`

装完切换shell到zsh

chsh -s $(which zsh)
#输入当前用户密码

好了现在注销一下,再终端默认就是zsh了

#0x1 安装oh my zsh

接下来安装oh my zsh,官网:Oh My Zsh

自动安装

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

手动安装:

#下载
git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
#备份zshrc
cp ~/.zshrc ~/.zshrc.bak
#覆盖zshrc
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

关掉终端重新打开

#0x2 配置zshrc

oh my zsh也已经安装好了,然后稍微配置一下

依我个人习惯,新建一个文档,在这里写自己的配置,然后在zshrc里source

touch .myzshrc
vim .myzshrc
#my zsh settings

#avoid mistakes
alias ll='ls -al'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias cls='clear'
alias exit='sync;exit'
alias cd..='cd ..'
alias node='nodejs'
alias -s py=vim
alias -s js=vim
alias -s c=vim
alias -s cpp=vim
alias -s java=vim
alias -s txt=vim
alias -s gz='tar -xzvf'
alias -s tgz='tar -xzvf'
alias -s zip='unzip'
alias -s bz2='tar -xjvf' #umask 022 #translate shell
alias fy='trans -b'
alias fanyi='trans'
alias f='trans -shell' #colorful
#PS1='[\u@\h:\w \A #\#]\$:'
export LS_OPTIONS='--color=auto'
alias grep='grep $LS_OPTIONS'
alias ls='ls $LS_OPTIONS'
#alias ll='ls $LS_OPTIONS -al'

然后vim .zshrc,拉到最下,加一行source ~/.myzshrc

#0x3 配置主题

然后配置一下主题

oh my zsh自带了很多主题,在~/.oh-my-zsh/themes下可查看



记住.zsh-theme前的名字,打开.zshrc,将名字填入此处



回到终端,执行source .zshrc使.zshrc的改动生效即可

另外呢,可以在ohmyzsh的官网或者github上找到更多其他的主题

请参照其各自的Readme进行安装。

#0x4 安装插件

最后来说下插件,ohmyzsh提供了强大的插件力量

ohmyzsh同样自带了大量插件,插件一律在oh-my-zsh/plugins/目录下

然后要使其生效同样要先写入.zshrc,然后source .zshrc

这是我安装的插件

  1. zsh-syntax-highlighting && zsh-autosuggestions

    这两个是需要自己安装的,其他的都是ohmyzsh自带的
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

然后写入文件即可

highlighting是高亮正确的命令,即输入正确的命令颜色为绿色,错误命令为红色,一目了然

autosuggestions记录你执行过的命令,下一次使用时以灰色字提示,按→补全,提高效率

  1. z

    z 是跳转目录,他会记得你进入过的目录

    cd /usr/share/fonts/

    下一次直接z fonts即可

  2. web-search

    这个插件允许你直接从终端打开浏览器进行搜索

    比如baidu 随意随缘

  3. extract

    万能解压,不管什么压缩文件包括zip,rar,tar

    输入x 文件名即可调用正确工具进行解压(前提是已经安装好工具)

#0x5 小结

设置到这里,你的zsh绝对碾压原来的bash一百条街

另外网上还有更多的主题和插件,当然你也可以尝试自己开发

更多功能请自行发掘。

安装更强大更美观的zsh,配置oh my zsh及插件的更多相关文章

  1. Linux 以非root用户安装zsh&配置on my zsh

    此文章参考以下三篇文章,如有侵权请联系 Linux非root用户安装zsh, 并用oh-my-zsh进行配置 在没有sudo权限的Linux服务器下安装oh-my-zsh 不使用root权限安装zsh ...

  2. 比JLRoutes更强大更好用的iOS开源路由框架—FFRouter

    目前iOS常用路由框架是JLRouter.HHRouter.MGJRouter. 但是这些路由库都各有不足,首先是JLRouter,用不到的功能繁多,而且基于遍历查找URL,效率低下.HHRouter ...

  3. oh-my-zsh配置你的zsh提高shell逼格终极选择

    抱歉,这篇博文推迟发布了,人都是有惰性的...看在这个牛逼闪闪的标题就原谅我吧! 为何这篇文章要归类到 mac 下? 第一个问题,稍后我们说明下. zsh是个什么东东? 第二个问题... 你应该稍微接 ...

  4. Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  5. summerDao-比mybatis更强大无需映射配置的dao工具

    summerDao是summer框架中的一个数据库操作工具,项目地址:http://git.oschina.net/xiwa/summer. 怎么比mybatis更强大,怎么比beetlsql更简单, ...

  6. Excel催化剂开源第24波-较VBA更强大的.Net环境的正则表达式

    在VBA上可以调用正则表达式库,从而编写正则表达式自定义函数,这个相信不少VBA开发者已经熟知,但VBA的VBScript正则表达式库毕竟是一个过时的产品,不像.Net那样是与时俱进的,所以两者实现出 ...

  7. UWP 更强大的文件获取能力

    默认情况下,通用 Windows 平台 (UWP) 应用可以访问特定文件系统位置. 应用也可以通过文件选取器或通过声明功能访问其他位置. 在创建新的应用时,默认情况下你可以访问以下文件系统位置: 1. ...

  8. 苹果IOS 12将使您的iPhone更安全,并有更强大的黑客保护

    一年一度的IOS刷新正在进行中,苹果已经预览了它,beta测试者已经安装了它,当iPhone在9月份到货时我们其他人应该获得iOS12.虽然软件3-D表情符号和屏幕时间限制等功能在软件到货时可能会受到 ...

  9. 开源基于docker的任务调度器pipeline,比`quartzs` 更强大的分布式任务调度器

    pipeline 分布式任务调度器 目标: 基于docker的布式任务调度器, 比quartzs,xxl-job 更强大的分布式任务调度器. 可以将要执行的任务打包为docker镜像,或者选择已有镜像 ...

随机推荐

  1. PHP源码进行加密(仅linux)

    加密软件(php_screw) 1.下载网站:http://sourceforge.net/projects/php-screw/ 2.描述: php文件通常以文本格式存贮在服务器端, 很容易被别人读 ...

  2. EIGRP-9-弥散更新算法-拓扑表

    弥散更新算法(DUAL)是一个收敛算法.它代替了其他距离矢量协议使用的Bellman-Ford 算法.路由环路.甚至是在协议完全收敛前出现的瞬时环路.都会对网络性能造成不良影响.为了防止环路的形成.D ...

  3. 【JMeter_02】JMeter目录结构与功能模块介绍

    安装包目录结构 1.backups: 存放jmeter对脚本的自动备份保存文件 2.bin:jmeter的可执行文件目录,包含启动.配置等相关文件 3.dosc:程序自带的官方文档本地存放目录 4.e ...

  4. 容器技术之Docker Machine

    前文我们聊了下docker容器的资源限制,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13138725.html:今天我们来聊一聊docker machine ...

  5. async/await剖析

    async/await剖析 JavaScript是单线程的,为了避免同步阻塞可能会带来的一些负面影响,引入了异步非阻塞机制,而对于异步执行的解决方案从最早的回调函数,到ES6的Promise对象以及G ...

  6. WeChair Plus版项目介绍

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 团队名称 WeChair 这个作业要求在哪里 团队作业第一次:团队作业第一次(2) 这个作业的目标 项目介绍,项目修改 作业正文 ...

  7. Python变量与基本数据类型

    Python变量与基本数据类型 前言 好了,从本章开始将正式进入Python的学习阶段.本章主要介绍的是Python变量与基本数据类型的认识,这些都是最基本的知识并且必须要牢靠掌握在心中. 注释 学习 ...

  8. 当我们创建HashMap时,底层到底做了什么?

    jdk1.7中的底层实现过程(底层基于数组+链表) 在我们new HashMap()时,底层创建了默认长度为16的一维数组Entry[ ] table.当我们调用map.put(key1,value1 ...

  9. 入门大数据---Kylin是什么?

    一.Kylin是什么? Apache Kylin是一个开源的.分布式的分析型数据仓库,提供Hadoop/Spark 上的SQL查询接口及多维度分析(OLAP)能力以支持超大规模的数据,最初由eBay开 ...

  10. 小师妹学JVM之:逃逸分析和TLAB

    目录 简介 逃逸分析和栈上分配 TLAB简介 TLAB详解 设置TLAB空间的大小 TLAB中大对象的分配 TLAB空间中的浪费 总结 简介 逃逸分析我们在JDK14中JVM的性能优化一文中已经讲过了 ...