继 Tabby、Warp 后,今天再来给大家推荐一款终端神器——WindTerm,完全开源,在 GitHub 上已经收获 6.6k 的 star。

作者还拿 WindTerm 和 Putty、xterm、Windows Terminal + ssh.exe、iterm2、rxvt、Gnome等等做了一个性能对比,结果其他终端均被吊打的不成样子,真正的杀人诛心
哈哈哈哈哈哈哈哈哈哈

工具不嫌多,哪个顺手用哪个,对吧?没毛病吧😁
WindTerm 不仅开源免费,还跨平台,支持 Windows、Linux 和 macOS。
直接到 release 页面选择适合自己操作系统的安装包。
体积 30M 左右,相对于动辄 200M 左右的安装包,真的是良心。

安装完成后,打开的界面和传统的终端不太一样,WindTerm 更像 IDE 的布局,左边是资源管理器+文件管理器,中间会默认打开一个 zsh 的终端窗口,右边是会话窗口+历史命令窗口,底部是发送窗口 + Shell 窗口。

使用终端最重要的一个场景就是 SSH,连接远程服务器,我这里有一个 1G 内存的轻量级云服务器,我们来连接它体验一下。
点击新建会话按钮开始 SSH 连接。

添加主机名,点击「连接」开始进行远程链接。

紧接着输入用户名和密码,我们关掉一些没必要的窗口,让整个界面更加清爽一些。

如果感觉字体比较小的话,可以直接按住**「command+」**两个组合键放大字体。
WindTerm 给我一个非常直观的操作是,它提供了一个折叠的功能,点击-号折叠,点击+号展开。

还有一个就是智能提示,非常到位,响应速度很快。

除了 SSH,还有一个重要的场景就是上传文件,我们知道,Xshell 是直接将 FTP 分离了出去,我总觉得这个产品分割设计很脑残,放在一起挺好的。
WindTerm 是放在一起的,直接打开文件文件管理器,选择文件上传还是直接拖拽,都非常便利。

文件上传完成后会有一个进度条提示。
如果想直接在 SSH 窗口中上传文件的话,就需要安装lrzsz。如果没安装的话,会提示错误❎。

因为我的远程服务器是 CentOS,所以执行 yum install lrzsz就可以直接安装了。

安装完成后就可以直接在 SSH 上传文件了,和其他终端不同的是,WindTerm 会有进度条提示。

WindTerm 还提供了高速传输模式,上传下载速度更快。

搞定 SSH 和 SFTP,一个终端的基础功能就全具备了,这也是我们最常用的两个场景。WindTerm 在这两方面都做的不错。
WindTerm 的自动补全功能还是非常强大的,只需要在行首键入 ! 就可以调出历史命令,然后使用向下的箭头选择历史命令就 OK 了。

WindTerm 能够自动补全的命令非常全面,支持:

不过有点小尴尬😓的是,WindTerm有自动锁屏的功能,过段时间(默认 30 分钟)没有操作,就会自动锁屏。然而,我之前并没有设置过锁屏密码,这就好像我自己的门我自己锁了,却没有钥匙🔑。

虽然提供了更改主密码的功能,但我就不知道初始密码是什么,就更尴尬了。
怎么办?
遇事不决问 issue:如何重置锁屏密码!

果然已经有小伙伴提出了这个问题,我们顺藤摸瓜就可以搞定了,找到 user.config 文件。

干掉 application.fingerprint 和 application.masterPassword。

再找到 .wind/profiles/default.v10/terminal/user.sessions 文件删除 session.autoLogin 就可以将主密码设置为空字符串了,之后再来修改主密码,就 OK 了。

WindTerm 支持三种主题的切换,亮白模式、暗黑模式、黑白相间模式。

我们来切换到亮白模式体验一下,还不错。

只需要在设置中,找到文本一栏,勾选「自动复制选定内容」就可以了。

选中内容,然后就直接复制了。
总的来说,WindTerm 的体验不错,除了我上面提到的这些基础功能外,像分屏啊,转接端口啊,并且在 Windows 下的体验要比 macOS 操作系统下更酷一些。

作者把两者的使用技巧全部分享到了下面这个网址上,小伙伴们可以去解锁一下。
没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。
本文已收录到 GitHub 上星标 3.1k+ 的开源专栏《Java 程序员进阶之路》,据说每一个优秀的 Java 程序员都喜欢她,风趣幽默、通俗易懂。内容包括 Java 基础、Java 并发编程、Java 虚拟机、Java 企业级开发(Git、Nginx、Maven、Intellij IDEA、Spring、Spring Boot、Redis、MySql 等等)、Java 面试等核心知识点。学 Java,就认准 Java 程序员进阶之路😄。
https://github.com/itwanger/toBeBetterJavaer
star 了这个仓库就等于你拥有了成为了一名优秀 Java 工程师的潜力。

作为新的阿里云用户,您可以50免费试用多种优惠,价值高达1,700美元(或8,500美元)。这将让您了解和体验阿里云平台上提供的一系列产品和服务。如果您以个人身份注册免费试用,您将获得价值1,700美元的优惠。但是,如果您是注册公司,您可以选择企业免费试用,提交基本信息通过企业实名注册验证,即可开始价值$8,500的免费试用!本教程介绍了如何设置您的帐户并使用您的免费试用版。关于免费试用在我们开始此试用之前,您还必须遵守以下条款和条件才能访问您的免费试用:只有在一年内创建的账户才有资格获得阿里云免费试用。通过此免费试用优惠,用户可以免费试用免费试用活动页面上列出的每种产品一次。如果您有多个帐
我使用Jekyll运行博客,并认为我会解决RedcarpetMarkdown解释器,因为它是developedandusedbyGitHub.好吧,我只是碰巧遇到了一个错误,去检查问题,然后foundthis.Maintainersays,"Asyouprobablyhavenoticed(harharharhar)Idon'thavetimetomaintainRedcarpetanymore.It'snotapriorityforme(IfindMarkdownthoroughlyboring)andit'snotapriorityforGitHub,becausewenolong
我们正在使用Vagrant进行部署,我们最终希望将此集群部署在Rackspace上。vagrant-rackspace插件是一个自然的选择,但它有一些错误,这些错误未包含在最新的0.1.1版本中(notablythatvagrantprovisiondoesn'twork)。我已经在我的personalfork中解决了这个问题通过合并其他人的工作来对存储库进行改造。是否可以从github安装vagrant插件?显而易见的事情没有奏效:[unix]$vagrantplugininstallvagrant-rackspace--plugin-sourcehttps://github.com
我有一个使用Jekyll托管在GitHub上的静态网站。问题是,我真的不需要master分支,因为存储库唯一包含的是网站。这样我就必须gitcheckoutgh-pages,然后gitmergemaster,然后gitpushorigingh-pages。有什么简单的方法可以摆脱gh-pages分支并直接从master推送? 最佳答案 Theproblemis,Idon'treallyneedthemasterbranch,astheonlythingtherepositorycontainsisthewebsite.Isthere
我每次打开终端时都会收到这个错误:警告:PATH设置为RVMruby但未设置GEM_HOME和/或GEM_PATH,请参阅:https://github.com/wayneeseguin/rvm/issues/3212这是在我最近安装zsh(oh-my-zsh)后开始发生的我不知道如何设置GEM_HOME和/或GEM_PATH的路径。 最佳答案 我也面临同样的问题,更改.zshrc中的以下行,exportPATH="/usr/local/heroku/bin:.........."到exportPATH="$PATH:/usr/
当我尝试创建一个github问题时,它给出消息未找到回复。以及如何发送身份验证header。因为创建问题需要用户登录或验证curl-XPOST-i-d'{"title":"my-new-repo","body":"mynewissuedescription"}'https://api.github.com/repos/barterli/barter.li/issuesHTTP/1.1404NotFoundServer:GitHub.comDate:Wed,19Feb201407:11:33GMTContent-Type:application/json;charset=utf-8Sta
我想通过github操作在gem上运行rspec(称之为priv_gem_a)。priv_gem_a依赖于私有(private)存储库中的另一个gem(称之为priv_gem_b)。但是,由于权限无效,我无法捆绑安装priv_gem_b。错误:Fetchinggemmetadatafromhttps://rubygems.org/..........Fetchinggit@github.com:myorg/priv_gem_bHostkeyverificationfailed.fatal:Couldnotreadfromremoterepository.Pleasemakesureyo
如果我只能找到正确的手册,我的Google-fu就会让我失望,因为这看起来很明显。我有一个由我们的托管服务提供商安装的Gitlab服务器Gitlab服务器有很多项目。对于其中一些项目,我希望Gitlab每次从本地客户端推送到Gitlab时自动推送到远程存储库(在本例中为Github)。像这样:客户端-->gitlab-->github任何标签和分支也应该被推送。AFAICT我有3个选择:用两个Remote配置本地客户端,同时推送到Gitlab和Github。我想避免这种情况,因为开发人员。在Gitlab服务器上的存储库中添加一个gitpost-receiveHook。这将是最灵活的(我
我在我的项目中使用过度使用gem(https://github.com/brigade/overcommit),当我使用GithubDesktopforosx时,我得到这些错误:ThisrepositorycontainshooksinstalledbyOvercommit,buttheovercommitgemisnotinstalled.Installitwithgeminstallovercommit.(1)gem已安装,它可以在终端中运行。我想这是因为我使用rvm而GithubDesktop不知道rvm。有人知道如何解决这个问题吗? 最佳答案
事实证明,由于securityconcerns,自定义ruby插件在GitHub页面上不起作用。.我正在尝试将插件(thisone)添加到我的Jekyll项目的_plugins文件夹中,但是当我将它部署到GitHub时,它会被忽略。问题:有没有办法解决这个问题?有没有人找到解决办法?注意:显然我可以在本地生成html文件并将它们提交到我的存储库。但这不是我想要的。 最佳答案 如果你想让Jekyll站点像在本地一样运行,比如让自定义插件正常工作,这里有一种非常方便的方式来构建和部署Jekyll站点到GithubPages。?AGi