专栏首页若川视野使用 ohmyzsh 打造 windows、ubuntu、mac 系统高效终端命令行工具

使用 ohmyzsh 打造 windows、ubuntu、mac 系统高效终端命令行工具

原标题名:oh my zsh 和 windows git bash 设置别名提高效率

写于2018年06月03日

在我的微信交流群中听闻很多前端开发比较贫穷,没有买mac电脑(比如我),也没有用过ohmyzsh。于是就有了这篇写于2018年文章的更新。 这篇文章没啥难度,很快就能看完,主要还是希望读者你看完后可以安装开始使用高效终端工具。有了这么强大的终端工具后我发现Windows很好用呀,瞬间感觉都不需要买mac了。

主要就是:

  • 利用Windowslinux子系统功能
  • 安装Ubuntu系统,安装ohmyzsh和一些插件
  • 安装windows Terminal工具
  • 安装vscode remote-wsl插件
  • 安装 tig 查看 git 记录

先看下效果。反正我用了ohmyzsh后,离不开了。

最终终端效果

windows 安装 Ubuntu 子系统 安装 windows Terminal

搜索启用或关闭 windows 功能,勾选适用于 LinuxWindows 子系统,确定后重启电脑。

搜索 Ubuntuwindows Terminal 并安装(windows Terminal 可能要求win10系统比较高的版本,一般更新到最新版本即可)

Ubuntu安装好后会要求设置用户名和密码。

搜索 启用或关闭 windows 功能

勾选 适用于 Linux 的 Windows 子系统

搜索 Ubuntu

建议安装最新版 Ubuntu 20.04

Windows Terminal

win10安装了ubuntu子系统和oh my zsh后,则可以通过/mnt/f/访问win10下的f盘,或者其他盘。也就有上面的pwd效果图。

安装 vscode remote-wsl 插件

下载安装vscode,并且安装remote-wsl插件。

vscode remote-wsl 插件

安装 oh my zsh

简述下oh my zshoh my zsh官网的安装方法。github ohmyzsh

安装oh my zsh部分适用于Ubuntumac系统。

echo $SHELL
# /bin/bash 默认是bash
# 查看下有哪些shells
cat /etc/shells
# 安装 zsh
sudo apt-get install zsh -y
# 查看zsh版本
zsh --version
# 5.1.1
# 安装后zsh 后cat /etc/shells 才有/bin/zsh /usr/bin/zsh

# 切换成zsh
chsh -s $(which zsh)
# 或者这条命令
# chsh -s /usr/bin/zsh
# 三种安装方案可供选择:
# Via curl
$ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# Via Wget
$ sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

# 如果上面两种情况还安装不了,可以使用如下方式。

# via git clone
git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
chsh -s $(which zsh)
# 打开新的终端会应用新的zshrc配置

如果以上三种方式还装不了,可以来找我(若川 微信ruochuan12)。也可以查看oh my zsh文档

安装成功后,配置信息会在~/.zshrc。可以通过code ~/.zshrc(如果没安装vscode,可以用vim ~/.zshrc)打开编辑zsh配置信息,可以看到默认配置了git 插件Plugin:git。也就是说,可以更加简便的使用git 相关的一些别名。

# 比如
`git status`时,只需要输入`gst`。
`git pull` 时,只需要输入`gl`。
`git push` 时,只需要输入`gp`等等。

是因为配置里有这些简写,还有更多可以查看这里oh my zsh plugin git.plugin.zsh文档配置,github oh my zsh plugin git.plugin.zsh文件地址。安装成功后,同时会创建~/.oh-my-zsh的文件夹,其实就是.oh-my-zshgit 仓库master分支。可以发现文件夹中有一个plugins文件夹,内置了很多插件。可以自定义主题theme,具体可以看example.zsh-theme。custom自定义相关。插件相关会安装在这里,更多可以查看example.plugin.zsh

我暂时安装了这几个插件。

plugins=(
  # 内置插件,启用即可
  git
  cp
  mv
  # 按两下esc键,用sudo权限
  sudo
  # 记录历史输入的zsh命令,自动提示,快速使用
  zsh-autosuggestions
  # zsh 命令高亮
  zsh-syntax-highlighting
)

顺带讲下后面两个插件的安装方法 安装 zsh-autosuggestions

git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

安装zsh-syntax-highlighting

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

$ZSH_CUSTOM 其实是个变量,代表这个路径~/.oh-my-zsh/custom, 也就是安装到了这个目录下。还有很多高效插件,等您发掘~oh my zsh官网不过插件安装多了,感觉会有些卡顿~

# 每次修改了这个`.zshrc`配置文件,需要重载一下,才能生效。
source .zshrc
# 也可以封装成一个简写命令 alias
alias rl='source ~/.zshrc'

也可以在这个配置文件中配置更多alias

# ~/.zshrc
# 比如跳转到工作目录
alias dgg='cd /mnt/f/git-source/github'
# vscode 打开要编辑的文件或文件夹
code blog

这也就是开头的效果图了。

最终终端效果

那不是win10,也想通过设置别名来提高效率,是不是就没有办法了呢,可以使用git bash设置alias,安装git,自带git bash

windows git bash 设置别名提高效率

windows 桌面或任意资源管理器位置,右击,选择Git Bash Here,即打开了git bash命令行。先设置下主题,右击选择options, Looks > theme > dracula我选择的是dracula主题,看起来比较舒适。还可以设置字体等。

# 跳转到根路径
cd ~
# 查看下是否有.bash_profile文件
la
# 如果没有.bash_profile文件,需要创建
touch .bash_profile
# 打开编辑 (我这里安装了vscode,所以直接用其打开文件)
code .bash_profile

可以根据修改设置一些别名。比如我们常用的git status命令,可以封装成gst。清屏clear命令封装成cls

alias gst='git status'
alias cls='clear'

每次修改这个文件需要输入source ~/.bash_profile重载这个文件,才会生效。code ~/.bash_profile,用vscode编辑这个配置文件,封装成一个命令。比如:

alias rl='source ~/.bash_profile'
alias bashconfig='code ~/.bash_profile'

这样每次修改保存后就只需要输入rl,即可重载生效了。还可以把一些工作目录封装,我的一些项目是放在/f/git-source/github文件下。

# github上的项目
alias dgg='cd F:/git-source/github'
# 周报相关
alias dcwk='cd F:/git-source/coding/weekly'

每次进入项目,就直接dgg,即可跳转到这个目录,然后选择相应的目录即可。比如dgg进入工作目录,cd analyse-vue-cli进入项目目录,(输入analtab键智能提示)

#  /f/git-source/github/analyse-vue-cli (dev)
# 查看状态 git status
gst
# 用vscode 打开这个文件夹,开始编辑~
code ./

git 相关的, 例举一些平时用的比较多的。

alias g='git'
alias ga='git add'
alias gaa='git add -all'
alias gp='git push'
alias gl='git pull'
alias gcmsg='git commit -m'
# 分支相关
alias gb='git branch'
alias gbr='git branch -r'
alias gba='git branch -a'
# checkout
alias gco='git checkout'
alias gcb='git checkout -b'
# merge
alias gm='git merge'
# diff
alias gd='git diff'
alias gdw='git diff --word-diff'

更多可以把oh my zsh的插件一些命令拷贝过来,留alias相关的即可,oh my zsh plugin git.plugin.zshPlugin:git wiki相当于解锁了oh my zshgit插件。还有很多插件,比如npm点击查看, node 等,都可以研究下。

git bash,有没有类似oh my zsh的插件呢,我暂时没发现,如果您知道,欢迎告诉我。目录相关的操作,也可以设置一些别名。比如:

# 回退到上一级
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias ......='cd ../../../../..'

更多别名可以自定义~windows上命令行工具还可以使用cmder点击查看cmder官网命令行工具。虽然我几年前就安装了,但发现还是git bash用的顺畅些,可能是我还不太习惯cmder。关于cmder配置相关,这里推荐晚晴幽草轩轩主的一篇文章:《Win下必备神器之Cmder》

也有cygwin,也是windows命令行工具,也可以安装on my zsh

当然,git也是可以设置别名的。

git设置别名,使用tig神器

# git status => git st
git config --global alias.st status

更多可以查看廖雪峰老师的这篇文章git 配置别名。不过可能大多数人不知道,他们可能用着可视化工具。我觉得可视化工具也是对git的一些封装,具体背后是什么命令,我们还是需要去了解熟悉的。命令行使用git,我推荐使用tiggit log增强版,性能很好。Ubuntulinuxmac可以直接安装,windows稍微麻烦些。具体安装方法查看tig github仓库中的官方安装文档,或者查看这篇文章:颠覆 Git 命令使用体验的神器 -- tig

小结

磨刀不误砍柴工,花时间折腾研究工具,有利于提高开发效率。

本文分享自微信公众号 - 若川视野(lxchuan12-wx),作者:若川视野

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用antigen轻松打造赏心悦目的shell环境

    一提到Shell环境,很多人可能想到的就是那种神秘的黑框界面,但是其实Shell环境也可以设置成非常酷的样子,并带有自动完成、自动补全、人性化提示等各种功能。可...

    乐百川
  • 开发效率太低?您可能没看这篇文章

    还记得刚参加工作的时候, 有位开发的同事软件使用效率奇高. 我曾亲眼目睹他在几秒之内打开开发软件, 优雅地调出隐藏的功能, 输入数据输出结果的过程行云流水, 一...

    鹅厂优文
  • 据说 99% 的人不知道 vue-devtools 还能直接打开对应组件文件?本文原理揭秘

    我的文章尽量写得让想看源码又不知道怎么看的读者能看懂。我都是推荐使用搭建环境断点调试源码学习,哪里不会点哪里,边调试边看,而不是硬看。正所谓:授人与鱼不如授人予...

    山月
  • 第7节 Go语言环境搭建

    当然你也可以登录Golang的国内网站:https://golang.google.cn/

    小尘哥
  • PHP/Laravel 本地开发环境搭建:Mac 篇

    在开始之前,我们先来介绍 PHP 全栈开发环境搭建,首先看看 Mac 环境如何搭建。

    学院君
  • 将你的Windows,快速打造成Docker工作站!

    docker好用,但安装麻烦,用起来也命令繁多。一个小白,如何打造舒适的docker环境,是一个非常有挑战的问题。

    macrozheng
  • 双系统重装win7后,修复grub

    forrestlin
  • linux之autojump命令

    原文链接:https://rumenz.com/rumenbiji/linux-autojump.html

    入门笔记
  • 手把手教你打造自己的 Linux 工作环境,美如画!

    我们在工作或学习过程中,有许多时候会接触到 Linux,然后便想要自己亲自试试这个系统,但苦于没有系统学习过,所以想要打造自己的工作环境难免会遇到许多困难。为了...

    村雨遥
  • 配置酷酷的Windows Powershell

    用过Linux的同学可能听说过ohmyzsh这个东西,它是一个工具包,包含了关于zsh(一个功能强大的Linux Shell)的各项配置,可以让用户非常方便的鼓...

    乐百川
  • Windows给力!可以扔掉Linux虚拟机了!

    Linux在程序员中属于高逼格的存在,当然安装了图形界面的程序员要减分,毕竟你需要用鼠标了!程序员的桌面不能比谁的更酷更炫,要比谁的屏幕多,桌面颜色少!

    xjjdog
  • 键盘鼠标共享效率工具-Synergy

    背景 在日常工作中,为了提高工作效率以及用户体验,会一个主机接多个显示器,像程序员一般都是使用两块显示器。 然而,有很多人是和我一样,自己有多台电脑,两个笔记本...

    若与
  • windows的Ubuntu子系统ssh和ftp

    但是很多时候,我们可能并没有Linux服务器,这个时候其实自己的个人电脑也可以勉强成为Linux服务器:

    生信技能树
  • 推荐 18 个终端命令行工具,说实话我心动了

    终端是程序员的必备工具之一,本文将介绍许多牛逼且实用的开源工具,本文仅对工具做基本介绍,不提供安装方法,因为这些工具的安装方法在项目的 github 首页上基本...

    猿天地
  • 通过基准测试探究 JIT 对 PHP 应用性能的影响

    即将发布的 PHP 8 最受大家关注的新特性就是引入了对 JIT 的支持,在学院君的视频号(没关注的可以关注下,视频号搜索「学院君」就可以看到)中,我已经简单介...

    学院君
  • awesome-linux-software-cn

    Awesome-Linux-Software 是由 LewisVo 发起并维护的 Linux 软件资源列表。该列表收集了许多在 Linux 平台下非常棒的软件、...

    guanguans
  • 写给工程师的 Ubuntu 20.04 最佳配置指南

    最近 Ubuntu 发布了 20.04 LTS 版本,我也在第一时间安装体验。由于各种 Linux 发行版本并不像 MacOS、Windows 一样开箱即用,因...

    张磊BARON
  • 写给工程师的 Ubuntu 20.04 最佳配置指南

    最近 Ubuntu 发布了 20.04 LTS 版本,我也在第一时间安装体验。由于各种 Linux 发行版本并不像 MacOS、Windows 一样开箱即用,因...

    张磊BARON
  • 学习Spark——环境搭建(Mac版)

    大数据情结 还记得上次跳槽期间,与很多猎头都有聊过,其中有一个猎头告诉我,整个IT跳槽都比较频繁,但是相对来说,做大数据的比较“懒”一些,不太愿意动。后来在一篇...

    JackieZheng

扫码关注云+社区

领取腾讯云代金券