更多博文请关注:https://blog.bigcoder.cn

每次看到Mac生态中炫酷的命令行工具,我就一脸羡慕,但是奈何财力不足,整不起动辄上万的电脑,搬砖人就只能折腾折腾手里的这台windows了。

效果展示:

  • Mac终端自带的zsh完全移安装到了WSL上面,命令交互样式变得更加美观,默认能够显示当前所在文件夹下的git分支

  • 更加智能的命令提示,这也是我最喜欢的一点

  • open命令,使用open命令可以使用系统默认软件打开文件夹以及文件

一. 安装WSL

因为Mac是一个类Unix系统,所以Windows下的WSL(Windows Subsystem for Linux)就是非常适合作为命令行的系统环境。使用WSL后大多数命令都和Mac一样了,这种开发和运维一体的感觉真是不错。

具体安装WSL的方法网上一大堆,大家自行Google,这里给大家贴一个在B站上视频教程 Windows自带Linux安装教程 WSL

安装好WSL后会多一个类似于CMD的黑窗口,这个窗口就是与Linux子系统交互的窗口。

二. 安装Fluent Terminal

那个黑黑的窗口显然不是我想要的,在网络世界遨游了一番最终选择了Fluent Terminal软件,它在易用性和功能性上做到了较好的平衡。大家只要去微软商店中搜索下载即可

三. 安装必要的环境

由于WSL是一个完全独立的子系统,它虽然能够访问主机中的文件,但是如果要执行Windows上的软件需要加.exe后缀不是很方便:

我们需要在Linux子系统上安装一个完整的Java环境,例如:JDK、Maven、Git

安装过程也请大家自行Google,但是需要说明一下,在WSL下安装的Maven,本地仓库可以指定为Windows下的本地仓库地址:

四. 安装Oh-my-zsh

4.1 安装zsh

  • 直接使用apt命令安装即可
sudo apt-get install zsh
  • 切换为shell为zsh
chsh -s /bin/zsh

想了解zsh请移步至:终极 Shell——ZSH

4.2 安装ohmyzsh

  • 使用git进行下载
wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
sh install.sh
  • 打开zsh的配置文件
sudo vim ~/.zshrc
ZSH_THEME=powerlevel10k/powerlevel10k
  • 重新加载配置文件:
source ~/.zshrc

4.3 安装字体

为了防止终端可能会出现乱码,也是因为你的电脑不支持那么多字体,所以我们需要先安装扩展字体。

推荐使用 Meslo Nerd Font 字体,Download these four ttf files:

WSL配置字体其实就是配置终端的字体,点击设置会自动跳转到一个json格式的文档。

4.4 配置环境变量

编辑/etc/zsh/zshrc文件,该文件类似ubuntu系统bash环境下的bashrc文件

4.5 安装自动提示插件

zsh-autosuggestions

  1. 下载自动补全插件至oh-my-zsh的插件目录中 ~/.oh-my-zsh/custom/plugins

    git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
  2. 编辑 ~/.zshrc文件,注册插件:

    plugins=(zsh-autosuggestions)
  3. 重新加载~/.zshrc

    source ~/.zshrc

安装自动补全插件可能会遇到问题:

解决方案:

https://github.com/zsh-users/zsh-autosuggestions/issues/557

4.6 wsl的ls文件夹为绿色的问题

https://www.cnblogs.com/sgmder/p/13177561.html

五. 配置open命令

编辑/etc/zsh/zshrc文件,在末尾添加下列命令:

alias open='cmd.exe /C start'

然后执行:

source /etc/zsh/zshrc

然后使用open [文件]即可打开该文件

Windows系统命令行的最佳实践的更多相关文章

  1. Windows系统命令行下编译连接C/C++源代码方法

    Windows系统下编译连接源代码方法:cl -GX test.c-GX: 启动同步异常处理上面的命令会产生可执行程序:test.exe在命令行中直接输入:test.exe 就可运行该程序 Tips: ...

  2. 高级安全Windows防火墙概述以及最佳实践

    本文简单介绍Windows防火墙的概念,给出使用场景并列出了常见的防火墙操作. 简介 在Windows NT6.0之后微软推出了高级安全Windows防火墙(简称WFAS),高级安全Windows防火 ...

  3. Windows系统命令行net user命令用法

    在Windows渗透测试过程中,最常用的要数net user 命令了,但是非常多的时候我们都是对Linux命令非常熟悉,对Windows命令非常熟悉或者了解用法的少只有少,为了以后工作方便,这里记录一 ...

  4. windows系统命令行

    使用   命令+/?就可显示命令的详细说明. 比如   ping/?就可知道ping命令的详细使用说明 netstat /?就可知道ping命令的使用说明

  5. Windows Azure 安全最佳实践 - 第 7 部分:提示、工具和编码最佳实践

    在撰写这一系列文章的过程中,我总结出了很多最佳实践.在这篇文章中,我介绍了在保护您的WindowsAzure应用程序时需要考虑的更多事项. 下面是一些工具和编码提示与最佳实践: · 在操作系统上运行 ...

  6. Windows Azure 安全最佳实践 - 第 5 部分:基于Claim 的标识,单点登录

    基于Claim的身份标识是处理网站与 Web 服务的身份认证和访问一种简单而强大的方式,无论您是在本地工作还是面向云工作.您可以通过减少自定义实施和使用基于Claim的单一简化标识模型,创建更安全的应 ...

  7. 最佳实践扩展Windows窗体DataGridView控件 .net 4.5 附示例代码

    Windows窗体DataGridView控件的性能调优.net 4.5   在处理大量数据时, DataGridView 控制可以消耗大量的内存开销,除非你仔细地使用它. 在客户有限的内存,你可以避 ...

  8. 最佳实践:Windows Azure 网站 (WAWS)

     编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Sunitha Muthukrishna 撰写. Windows Azure 网站 (WAWS) 允许您在 Windows ...

  9. Windows Azure 安全最佳实践 - 第 6 部分:Azure 服务如何扩展应用程序安全性

    多种Windows Azure服务可以帮助您将应用程序安全性扩展到云. 有三种服务可提供多个提供程序之间的身份标识映射.内部部署数据中心间的连接和相互发送消息的应用程序功能(无论应用程序位于何处). ...

  10. Windows Azure 安全最佳实践 - 第 4 部分:需要采取的其他措施

    那么,哪些安全威胁应由WindowsAzure环境缓解?哪些安全威胁必须由开发人员缓解? 开发 Windows Azure 应用程序的最佳安全做法一文说明了对于在 Windows Azure 中运行的 ...

随机推荐

  1. Hessian反序列化分析

    RPC协议 RPC全称为Remote Procedure Call Protocol(远程调用协议),RPC和之前学的RMI十分类似,都是远程调用服务,它们不同之处就是RPC是通过标准的二进制格式来定 ...

  2. k8s之hostPath存储卷

    一.简介 hostPath:用于将目录从工作节点的文件系统挂载到pod中. 数据的生命周期与节点相同.我们知道,虽然hostPath卷实现pod中数据存储到节点的文件系统中,但是pod的调度不是固定的 ...

  3. 升级gradle:Could not find method jackOptions() for arguments

    前言 这是我在升级gradle发生的错误. 解决 原因是被废弃了: 删除: jackOptions { enabled true } 解释一下什么是jack: Jack 是 Java Android ...

  4. c# 优化代码的一些规则——什么情况下应该使用new[七]

    前言 new 在重构这本书中写道new就是坏代码的味道,说明使用new的情况并不多. 在这里我指的new 是方法修饰符,而不是指实例. 正文 看下new的作用: new 修饰符可以重新定义从基类继承下 ...

  5. 分布式文件存储-FastDFS

    1.1 FastDFS简介 1.1.1 FastDFS体系结构 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了 ...

  6. Spring 源码阅读(二)IoC 容器初始化以及 BeanFactory 创建和 BeanDefinition 加载过程

    相关代码提交记录:https://github.com/linweiwang/spring-framework-5.3.33 IoC 容器三种启动方式 XML JavaSE: ApplicationC ...

  7. 力扣580(MySQL)-统计各专业人数(中等)

    题目: 一所大学有 2 个数据表,分别是 student 和 department ,这两个表保存着每个专业的学生数据和院系数据. 写一个查询语句,查询 department 表中每个专业的学生人数 ...

  8. 如何在 Anolis 8上部署 Nydus 镜像加速方案?

    简介: 手把手教你在 Anolis OS 上部署 Nydus! 在上一篇文章中详细介绍Anolis OS 是首个原生支持镜像加速 Linux 内核,Nydus 镜像加速服务重新优化了现有的 OCIv1 ...

  9. 【阿里云EMR实战篇】以EMR测试集群版本为例,详解 Flink SQL Client 集成 Hive 使用步骤

    简介: 以测试集群版本为例(EMR-4.4.1)-- Flink SQL Client 集成 Hive 使用文档 作者:林志成,阿里云EMR产品团队技术支持,拥有多年开源大数据经验 1.以测试集群版本 ...

  10. Apache Flink在 bilibili 的多元化探索与实践

    简介: bilibili 万亿级传输分发架构的落地,以及 AI 领域如何基于 Flink 打造一套完善的预处理实时 Pipeline. 本文由 bilibili 大数据实时平台负责人郑志升分享,本次分 ...