黑科技抢先尝 | Windows全新终端初体验(附代码Build全过程)

640?wx_fmt=gif


640?


微软在几天前的build大会上展示了Windows Terminal的威力,由于官宣要在6月中旬才上Microsoft store,还有一个多月要等呢。好在代码已公布在 github, 于是决定自己 build 后体验一番。遇到不少坑,大概整理一下流程,分享给大家。如果大家如果发现问题,欢迎指正。


视频如下:



640?

将Window 10 升级到1903版本

试过用Windows 10 更新助手(Windows 10 update assistant)来升级Windows 10, 发现只能升级到1809版本。而编译 github 上的 Microsoft terminal 代码必须使用Window 10的1903版本.


好在前不久听说了工具网站MSDN, 我告诉你(http://msdn.itellyou.cn/)上可以下载到该版本的镜像。

640?wx_fmt=png

关于版本选择,到底选Consumer版还是Business版呢?经大佬Edi Wang指点,得悉如下信息:

  • 如果你的 Windows 是 家庭版,请选择Consumer

  • 如果你的 Windows 是 专业版或企业版,请选择Business


至于ed2k://资源的下载,你使用百度云盘的离线下载也好,使用迅雷也行。


640?

安装好git, 从github上clone代码

首先需要安装好git for Windowshttps://gitforwindows.org/),然后使用 git 去 clone 一份代码。


Microsoft Terminal 的 github仓库是:

https://github.com/microsoft/Terminal

对应的 clone地址是:

https://github.com/microsoft/Terminal.git


打开命令行,使用cd命令,切换到自己平时存vs项目的路径(比如我切换到D:\Coding)。

接着只需要在Git Bash中输入如下命令即可:

git clone https://github.com/microsoft/Terminal.git

640?wx_fmt=png

等 clone 完成,就可以进行下一步了。

确保 clone 仓库完成后,还可以使用以下命令克隆子模块:

git submodule update --init --recursive



640?

安装 VS 2019 和  .NET core 3.0 SDK

先安装 vs 2019 professional 或 enterprise版本,github上的文档提到了要编译 window terminal 必须勾选上:

  • Desktop Development with C++

  • Universal Windows Platform Development

  • Windows SDK version 10.0.18362.0


再安装好.net core 3.0 SDK,比较简单,就不再详述。

在vs的设置里,勾选.NET core下的"Use preview SDK"(使用.NET Core SDK预览版),重启 VS。

640?wx_fmt=png


在 vs 2019 中打开Windows terminal项目(对应文件夹Terminal)下的OpenConsole.sln, 如果不勾选"使用.NET Core SDK预览版"直接编译,很可能会报下面的 Error:

640?wx_fmt=png


640?

重定解决方案目标

在上一步中,用vs2019打开OpenConsole.sln时,系统会提示你将项目重新定位到 v142。 对于“Windows SDK版本”,请选择“10.0.18362.0”。 将“Platform Toolset”设置为“Upgrade to v142”。

640?wx_fmt=png

然后往下拖,按下图设置:

640?wx_fmt=png

设置完后,单击最下面的OK。


当然,如果误点了"取消",也能通过右键单击整个Solution -> Retarget solution来设置:

640?wx_fmt=png


640?

设置好编译平台和启动的项目

在你尝试再次build之前,请确保你已经选择好与你的计算机匹配的编译平台(Solution Platform)。

不知道你一开始打开SolutionOpenConsole.sln时编译平台和启动项目是什么样的,我的是这样的:

640?wx_fmt=png

要正确地 build,这里需要设置如下:

640?wx_fmt=png

否则会出现很多错误。


640?

编译成功后出现一个新的Powershell

解决完编译时的各种状况之后,Ctrl + F5运行项目。

唉,和之前的Powershell有何不一样呢?按Ctrl + T之后会多了个菜单,同一个窗口中可以有多个Tab,而其他功能暂时没进来,等正式版。此外,还多了句话(见高亮部分)~

尝试新的跨平台 PowerShell https://aka.ms/pscore6


任务栏中相应的图标为:

640?wx_fmt=png

Ctrl + T之后, 右上角会出现一个以+开头的菜单

640?wx_fmt=png

但你选择cmd的时候,视频中的酷炫效果就有出来的迹象了:

640?wx_fmt=png

接下来,介绍一下如何在上面这个新的cmd中使用Linux命令,以我最熟悉的Ubuntu为例来介绍吧。


640?

安装Ubuntu

在Microsoft store里搜索到Ubuntu,然后购买,安装。这实际上就是WSL (Windows Subsystem for Linux)。

640?wx_fmt=png

当然,你想体验其他版本的Linux,也是可以的,比如Arch Linux

640?wx_fmt=png


640?

在编译出来的命令行中使用Linux命令

安装完WSL版的 Linux 后,还需要开启WSL的权限:

以"管理员权限"另开一个PowerShell窗口,

640?wx_fmt=png

然后输入如下命令:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

640?wx_fmt=png

等这里的命令完成,就可以在build出来的 Terminal 中执行 Linux 命令了。


先在cmd中输入ubuntu, 需要花一点点时间启动Ubuntu, 设置好用户名和密码。

然后就可以愉快地玩Ubuntu了,下面我随便输入了几个命令 ps, touch, ls等,如下图所示。

640?wx_fmt=png

如有什么疑问或建议,欢迎及时留言交流。


如果自己不想配置和build,可以下载build好的体验一把:

传送门

https://pan.baidu.com/s/1Xrh-0KbsBmh-zJYsdtYqnA 口令: y233


备份地址:

https://github.com/yanglr/WindowsDevTools/tree/master/awosomeTerminal


其他玩法:

Build and install Windows Terminal from Azure DevOps ? Keep IT tidy

https://blog.stomsvik.com/posts/2019/terminal-azure-devops/


参考:

Microsoft Terminal - README.md

https://github.com/microsoft/Terminal/blob/master/README.md


Windows 子系统适用于 Linux (WSL) 上 Windows 10 上安装 | Microsoft Docs

https://docs.microsoft.com/zh-cn/windows/wsl/install-win10


Donovan Brown | Building the new Windows Terminal with Visual Studio 2019

http://www.donovanbrown.com/post/Building-the-new-Windows-Terminal-with-Visual-Studio-2019



640?wx_fmt=gif



原文地址:

https://www.cnblogs.com/enjoy233/p/awesome_windows_terminal_build_and_trial.html 

640?wx_fmt=jpeg

smiley_66.png点击"在看"的人,

2019都会变得特别好看?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/315954.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二项式反演(非详细)

引入 二项式反演又名广义容斥定理 二项式反演可以表示成: f[n]∑i0n(−1)iCnigi⟺gn∑i0n(−1)iCnif[i]f[n]\sum_{i0}^n(-1)^iC_{n}^{i}g_{i}⟺g_{n}\sum_{i0}^{n}(-1)^iC_{n}^{i}f[i]f[n]∑i0n​(−1)iCni​gi​⟺gn​∑i0n​(−1)iCni​f[i] 常用表达为&#xff…

aelf帮助C#工程师10分钟零门槛搭建DAPP私有链开发环境

aelf是一个可扩展的去中心化云计算区块链平台,支持高性能合约并行执行、原生多链数据交互、存储使用高性能分布式数据库。aelf整个系统可以在windows、osx及linux运行,团队在osx环境下开发,基于.net core DAPP开发1.安装.net core及protobufh…

不容易系列之一

不容易系列之一 题意: n个数,求n个人错排(全部错误)的方案数 题解: 这题地推可以求,咱们这里用二项式反演来做 设f(i)为恰好有i个人错排f(i)为恰好有i个人错排f(i)为恰好有i个人错排,g(i)为最多i个人错排g(i)为最多…

Build 2019 上微软的开源动作有点不一样

微软今年举办的 Build 开发者大会可谓是抢足风头,大会第一天就放了不少大招:宣布新的命令行终端 Windows Terminal、Windows 10 的 Linux 子系统 WSL 2 将运行真正的 Linux 内核、跳过 .NET 4 宣布 .NET 5 的计划、宣布 Web 版本的 VS Code (Visual Stud…

P1437 [HNOI2004]敲砖块

P1437 [HNOI2004]敲砖块 题意: 在一个凹槽中放置了 n 层砖块、最上面的一层有 n 块砖,从上到下每层依次减少一块砖。每块砖都有一个分值,敲掉这块砖就能得到相应的分值,如下图所示: 14 15 4 3 2333 33 76 22 …

在kubernetes 集群内访问k8s API服务

所有的 kubernetes 集群中账户分为两类,Kubernetes 管理的 serviceaccount(服务账户) 和 useraccount(用户账户)。基于角色的访问控制(“RBAC”)使用“rbac.authorization.k8s.io”API 组来实现授权控制,允…

C. 奇奇怪怪的魔法阵(未搞懂)

C. 奇奇怪怪的魔法阵 题意: n个点m条边,定义集合S为独立集,当且仅当任意x,y∈S,x与y之间没有边。空集也是独立集 现在对于每一个点的集合T,有多少子集为独立集 设N0,1,…,n-1,AT∑S⊂T[S是独立集]A_{T}\sum_{S⊂T}[S…

.NET Core之只是多看了你一眼

技术学习是一件系统性的事情,如果拒绝学习,那么自己就会落后以至于被替代。.NET也是一样,当开源、跨平台成为主流的时候,如果再故步自封,等待.NET的就是死路一条,幸好.NET Core问世了,社区反响积…

Educational Codeforces Round 111 (Rated for Div. 2)

Educational Codeforces Round 111 (Rated for Div. 2) 题号题目知识点AFind The ArrayBMaximum Cost DeletionCManhattan SubarraysDExcellent Arrays组合数学思维EStringforces状压dpFJumping Aroundboruvka算法

TOTP 介绍及基于 C# 的简单实现

TOTP 介绍及基于 C# 的简单实现IntroTOTP 是基于时间的一次性密码生成算法,它由 RFC 6238 定义。和基于事件的一次性密码生成算法不同 HOTP,TOTP 是基于时间的,它和 HOTP 具有如下关系:TOTP HOTP(K, T)HOTP(K,C) Truncate(HMAC-…

微软携手红帽,共筑开源新未来

官宣了,官宣了!微软携手红帽正式推出重要力作Global Azure 公有云第一款联合管理的 OpenShift 产品,业界欢腾!自此,微软在拥抱云计算开源之路上,多了一股强劲的推动力。5月初刚刚举办的全球 Red Hat Summit…

CF1550D Excellent Arrays(完全会了更新)

CF1550D Excellent Arrays 题意&#xff1a; 定义一个长度为n的整数序列a是好的仅当对于任意整数i∈[1,n]&#xff0c;都有ai!ia_i !iai​!i 设F(a)等于满足1<i<j<n,aiajija_ia_jijai​aj​ij的(i,j)对数 我们定义一个长度为n的序列a是完美的&#xff0c;仅当&#…

.NET Core 3.0之深入源码理解Startup的注册及运行

开发.NET Core应用&#xff0c;直接映入眼帘的就是Startup类和Program类&#xff0c;它们是.NET Core应用程序的起点。通过使用Startup&#xff0c;可以配置化处理所有向应用程序所做的请求的管道&#xff0c;同时也可以减少.NET应用程序对单一服务器的依赖性&#xff0c;使我们…

置换群,Polya引理和burnside引理(等价类计数问题)

参考文章&#xff1a; 等价类计数问题 Burnside引理&Plya定理 Burnside引理与Polya定理 置换群和Burnside引理&#xff0c;Polya定理 概念引入&#xff1a; 离散数学应该学过置换群的相关概念&#xff0c;置换本质就是映射&#xff0c;可以理解成一个正方形绕其中心逆时针…

时隔两年的重大更新,微软发布.NET Framework 4.8

微软发布了.NET Framework 4.8&#xff0c;这是两年来.NET 框架的第一个重大更新。新版本包含多个产品领域的改进&#xff0c;其中包括 Windows 窗体、WCF、WorkFlow 和 WPF。它还在基类库&#xff08;BCL&#xff09;和通用语言运行时&#xff08;CLR&#xff09;中有一些更新…

P1446 [HNOI2008]Cards

P1446 [HNOI2008]Cards 题意&#xff1a; 有n张牌&#xff0c;染三种颜色&#xff0c;每种颜色规定数目&#xff0c;给出m种不同的洗牌方法。两种染色方法相同当且仅当其中一种可以通过任意的洗牌法&#xff08;即可以使用多种洗牌法&#xff0c;而每种方法可以使用多次&…

EventStore文件存储设计

背景ENode是一个CQRSEvent Sourcing架构的开发框架&#xff0c;Event Sourcing需要持久化事件&#xff0c;事件可以持久化在DB&#xff0c;但是DB由于面向的是CRUD场景&#xff0c;是针对数据会不断修改或删除的场景&#xff0c;所以内部实现会比较复杂&#xff0c;性能也相对比…

CF79D Password(P3943 星空)

CF79D Password&#xff08;P3943 星空&#xff09; 题意&#xff1a; 你有 n 个灯泡&#xff0c;一开始都未点亮。 同时你有 l 个长度&#xff0c;分别为 a1∼ala_1∼ a_la1​∼al​ 每次你可以选择一段连续的子序列&#xff0c;且长度为某个 aia_iai​&#xff0c;并将这些…

.NET Core 如何禁止.resx文件自动生成Designer.cs

点击上方蓝字关注“汪宇杰博客”在 Visual Studio 中&#xff0c;如果我们在一个 .NET Core 工程里加入了一个资源文件&#xff08;.resx&#xff09;&#xff0c;那么你会发现有个对应的 .Designer.cs 文件被自动生成了&#xff0c;每次资源文件的内容有变化&#xff0c;这个设…

P1450 [HAOI2008]硬币购物

P1450 [HAOI2008]硬币购物 题意&#xff1a; 共有 4 种硬币。面值分别为c1,c2,c3,c4c_1,c_2,c_3,c_4c1​,c2​,c3​,c4​。 某人去商店买东西&#xff0c;去了 n 次&#xff0c;对于每次购买&#xff0c;他带了 did_idi​枚 i 种硬币&#xff0c;想购买 s 的价值的东西。请问…