作者:Mintimate
博客:https://www.mintimate.cn
Mintimate’s Blog,只为与你分享
PowerShell
大家在macOS上或者Linux上使用SSH远程连接服务器、使用npm启动nodejs服务器进程、使用Java启动j封装了tomcat的Springboot项目,是不是都或多或少用到Terminal呢?那么Windows上有没有用过Powershell呢?
还是……自带的PowerShell太丑而不用?那么试试用Windows Terminal调用PowerShell吧~~
程序特性
PowerShell(包括Windows PowerShell和PowerShell Core)是微软公司开发的任务自动化和配置管理框架,由.NET Framework和.NET Core构建的命令行界面壳层相关脚本语言组成,最初仅仅是Windows组件,后于2016年8月18日开源并跨平台支持。
嘿嘿,虽然是跨平台支持,但是我自己用Windows很少,我是没在Linux和macOS上使用过PowerShell,感兴趣的小伙伴可以看看开源地址:https://github.com/PowerShell/PowerShell。
PowerShell的特性很多,比如:
- 一致性的设计让所有工具和系统资料的使用语法、命名原则都相同。
- 脚本语言简单易学,且支持现有的
脚本程序
和命令行工具
。 - 具备完整的扩展,软件商或开发者都能可以自行扩张使用。
- 进程间数据传递内容具有强类型特征。
- PowerShell Core 可以自动检测适合的编码,自动识别 Linux 和 Windows 下的换行符,跨平台。
但是,我感受最深的,就说支持一些GNU和Unix的命令,比如:cd
、cat
等等。并且这个是在安装WSL前就原生支持的,在安装WSL后,可以更强大。
“白话文”版本
说白了,一般情况下,你完全可以吧PowerShell当作“大号”的CMD
(命令提示符),在继承原有命令的同时,支持OpenSSL、OpenSSH等工具函数,比如:支持使用SSH连接Linux。
同时,也支持扩展,比如:使用WSL;功能性更强。
不过,我们今天的主角是Windows Terminal:https://github.com/microsoft/terminal
Windows Terminal
Windows Terminal,顾名思义。就说Windows系统上的Terminal,也就是终端模拟器。
事实上,Win11开始,Windows Terminal就是PowerShell的默认调取器。也就是Win10这里的PowerShell位置,已经被Windows Terminal
接替:
当然,如果你是Win10用户,也没关系,可以在微软商店内,免费下载并且免费更新:
当然,如果你微软商店上不去,或者下载慢,可以到GitHub上下载:https://github.com/microsoft/terminal/releases
毕竟,微软商店在中国大陆没有CDN节点,不能带来像腾讯云CDN这样的优秀的高速内容分发体验,建议微软快去安排一下?。
调用PowerShell
安装好,或者说直接打开Windows Terminal,默认就是PowerShell界面啦:
调用CMD
同样,Windows Terminal支持调用CMD
事实上,Windows Terminal支持自定义任何第三方的命令行。你甚至还可以自定义ssh连接(后文说说)
只需要在新标签内添加即可:
More
好吧,上述看上去都是简单的不能再简单的内容,确实让你原本Win10上蓝蓝的PowerShell好用、好看了一些,但是接下来才是真正让你PowerShell更Power的方案⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄。
自定义配色
首先是解决配色问题,这个可不是好不好看的问题,是直接影响到使用体验。
举个例子,这个是Win10上的PowerShell,SSH连接Linux后,使用Vim进行编辑操作:
不用担心,并不是你的电脑显示器色域不够……是真的看不清……◡ ヽ(`Д´)ノ ┻━┻
但是,如果用Windows Terminal打开,效果就不一样了:
当然,这并不是最终形态。这样可能还是无法看清,我们可以自定义配色。
打开设置:
之后,即可选择配色:
但是默认的配色,不是很喜欢。我喜欢和我macOS Terminal一样的主题。(没办法,人老了,不喜欢改变◡ ヽ(`Д´)ノ ┻━┻)
snazzy
自带的配色,其实不是很能满足所有人需求,所以……教大家怎么自定义配色。
举个例子,平时我用macOS活着Linux,使用的Terminal配色是snazzy:https://github.com/sindresorhus/terminal-snazzy
我在Windows Terminal上,或者是PowerShell上也想用类似配色。这样就可以打开自定义文件进行配置:
我们在schemes
内追加我们自己自定义的配色JSON对象即可:
比如:我添加snazzy的配色,追加JSON对象
代码语言:javascript复制{
"background": "#282A36",
"black": "#282A36",
"blue": "#57C7FF",
"brightBlack": "#686868",
"brightBlue": "#57C7FF",
"brightCyan": "#9AEDFE",
"brightGreen": "#5AF78E",
"brightPurple": "#FF6AC1",
"brightRed": "#FF5C57",
"brightWhite": "#EFF0EB",
"brightYellow": "#F3F99D",
"cursorColor": "#97979B",
"cyan": "#9AEDFE",
"foreground": "#EFF0EB",
"green": "#5AF78E",
"name": "Snazzy",
"purple": "#FF6AC1",
"red": "#FF5C57",
"selectionBackground": "#3E404A",
"white": "#F1F1F0",
"yellow": "#F3F99D"
},
之后,保存后,到主页内激活:
看看效果:
SSH选项卡
另外,我使用Windows Terminal配合PowerShell,我会使用SSH选项卡功能。
首先明确,Win10 (1809版本后,2018年后)开始支持SSH,并且使用PowerShell进行激活。
所以,我们Win10版本大于1809,都可以使用Windows Terminal配合PowerShell的SSH,开启一个选项卡,这个选项卡作用类似于Xshell的记住服务器(Linux):
添加这个选项卡后,我只需要点击选项卡,之后输入密码即可SSH远程我局域网的树莓派啦:
当然,如果想免密登录,就需要本地预先配置证书了~~
配置
现在,我们来说说如何配置。其实很简单,只需要在设置内添加并保存即可:
END
以上就是本次分享的全部内容了。本来还想介绍WSL的……但是我的Windows虚拟机,确实没什么空间去再安装一个WSL了。只能交给大家自己体验了。
只能说,WSL环境在Windows Terminal上还是很舒服的(在朋友电脑上用过,感觉和Linux一样了~)
有机会,和大家分享WSL吧(又挖一坑)
不过,现在腾讯云轻量应用服务器这么便宜。如果是学习目的,可以直接买台腾讯云的轻量应用服务器,同时更接近真实开发环境,比虚拟机可好太多了:https://curl.mintimate.cn/1jccDM8rK1S