Windows系统命令行的最佳实践
更多博文请关注: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 安装自动提示插件
下载自动补全插件至
oh-my-zsh的插件目录中~/.oh-my-zsh/custom/pluginsgit clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
编辑
~/.zshrc文件,注册插件:plugins=(zsh-autosuggestions)
重新加载
~/.zshrcsource ~/.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系统命令行的最佳实践的更多相关文章
- Windows系统命令行下编译连接C/C++源代码方法
Windows系统下编译连接源代码方法:cl -GX test.c-GX: 启动同步异常处理上面的命令会产生可执行程序:test.exe在命令行中直接输入:test.exe 就可运行该程序 Tips: ...
- 高级安全Windows防火墙概述以及最佳实践
本文简单介绍Windows防火墙的概念,给出使用场景并列出了常见的防火墙操作. 简介 在Windows NT6.0之后微软推出了高级安全Windows防火墙(简称WFAS),高级安全Windows防火 ...
- Windows系统命令行net user命令用法
在Windows渗透测试过程中,最常用的要数net user 命令了,但是非常多的时候我们都是对Linux命令非常熟悉,对Windows命令非常熟悉或者了解用法的少只有少,为了以后工作方便,这里记录一 ...
- windows系统命令行
使用 命令+/?就可显示命令的详细说明. 比如 ping/?就可知道ping命令的详细使用说明 netstat /?就可知道ping命令的使用说明
- Windows Azure 安全最佳实践 - 第 7 部分:提示、工具和编码最佳实践
在撰写这一系列文章的过程中,我总结出了很多最佳实践.在这篇文章中,我介绍了在保护您的WindowsAzure应用程序时需要考虑的更多事项. 下面是一些工具和编码提示与最佳实践: · 在操作系统上运行 ...
- Windows Azure 安全最佳实践 - 第 5 部分:基于Claim 的标识,单点登录
基于Claim的身份标识是处理网站与 Web 服务的身份认证和访问一种简单而强大的方式,无论您是在本地工作还是面向云工作.您可以通过减少自定义实施和使用基于Claim的单一简化标识模型,创建更安全的应 ...
- 最佳实践扩展Windows窗体DataGridView控件 .net 4.5 附示例代码
Windows窗体DataGridView控件的性能调优.net 4.5 在处理大量数据时, DataGridView 控制可以消耗大量的内存开销,除非你仔细地使用它. 在客户有限的内存,你可以避 ...
- 最佳实践:Windows Azure 网站 (WAWS)
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Sunitha Muthukrishna 撰写. Windows Azure 网站 (WAWS) 允许您在 Windows ...
- Windows Azure 安全最佳实践 - 第 6 部分:Azure 服务如何扩展应用程序安全性
多种Windows Azure服务可以帮助您将应用程序安全性扩展到云. 有三种服务可提供多个提供程序之间的身份标识映射.内部部署数据中心间的连接和相互发送消息的应用程序功能(无论应用程序位于何处). ...
- Windows Azure 安全最佳实践 - 第 4 部分:需要采取的其他措施
那么,哪些安全威胁应由WindowsAzure环境缓解?哪些安全威胁必须由开发人员缓解? 开发 Windows Azure 应用程序的最佳安全做法一文说明了对于在 Windows Azure 中运行的 ...
随机推荐
- Stable diffusion 初学者指南
1. Stable diffusion 初学者指南 想掌握Stable Diffusion AI技术吗? 这份初学者指南专为完全没接触过Stable Diffusion或任何AI图像生成器的新手设计. ...
- Mybatis实现增删改查
1.CRUD 1.1namespace namespace中的包名必须和Dao/mapper接口包名一致 1.2select 选择,查询语句 id:就是对应的namespace中的方法名 resul ...
- Linux之bond和team
一.bond 和 team 区别 bond只能是双网卡绑定,team不需要手动加载相应内核模块和有更强的拓展性,最高可以绑定8块网卡. 二.模式 bond模式 (1)mode=0(balance-rr ...
- Flink 自定义 ClickHouse Table Connector 的简单实现
本次实现基于 Flink 1.18 版本,具体的对象之间的关系可以先参考官网的图: 先拿官网上的 Socket 示例来说一下实现过程: 首先编写 SocketDynamicTableFactory 实 ...
- 《Effective C#》系列之(零)——概要
把全书的内容讲述完整可能需要很长时间,我可以先回答主要目录和核心的内容.如果您有任何特定问题或需要更详细的解释,请告诉我. <Effective C#>一书共包含50条C#编程建议,以下是 ...
- 顺通鞋服ERP库存管理系统
鞋服ERP库存管理系统是专门为鞋服行业设计的企业资源规划软件,它提供了一系列库存管理功能,帮助鞋服企业有效管理库存流程和提升库存管理效率.以下是一些鞋服ERP库存管理系统常见的功能和特点: 1. 库存 ...
- Docker部署Node应用简单实践
简介: 本文将从零至一,介绍如何在云服务器上通过 Docker 容器运行一个简单的Node应用. 前言 本文将从零至一,介绍如何在云服务器上通过 Docker 容器运行一个简单的Node应用.本文假设 ...
- 云原生事件驱动引擎(RocketMQ-EventBridge)应用场景与技术解析
简介: RocketMQ 给人最大的印象一直是一个消息引擎.那什么是事件驱动引擎?为什么我们这次要推出事件驱动引擎这个产品?他有哪些应用场景,以及对应的技术方案是什么?本文我们就一起来看下. 作者:罗 ...
- 如何利用 AHAS 保障 Web 服务稳如磐石?
简介:应用高可用服务 AHAS (Application High Availability Service) 是经阿里巴巴内部多年高可用体系沉淀下来的云产品,基于阿里开源流控降级组件 Sentin ...
- 庖丁解InnoDB之REDO LOG
简介: 数据库故障恢复机制的前世今生一文中提到,今生磁盘数据库为了在保证数据库的原子性(A, Atomic) 和持久性(D, Durability)的同时,还能以灵活的刷盘策略来充分利用磁盘顺序写的 ...