不是吧~ 还在用默认的cmd?是时候用用它啦!

607 阅读4分钟

好久不见🌈各位小伙伴们💪🏻~ 最近在公司一直使用win系统,为了能愉快的编码必须得折腾一下啦! 所以本篇和小伙伴分享一下,win系统上弄个智能的命令行工具。觉得可以就折腾吧~

前言

为了让自己用起来舒服,前后还是折腾了几个软件😂。为了我的命令行能够有智能提示查看命令历史插件漂亮的颜色脚本等等功能,我想起了我在 macOS 中使用的 命令行工具fish。为了能在vscode中使用、能在任何地方随时打开并进入 fish 命令行,于是折腾开始~

折腾嘛,还是得有个小目标:

  • 安装并使用fish
  • 能在任意位置使用终端并进入 fish
  • vscode默认终端使用 fish

先看看效果图:

▲任意位置使用终端

▲vscode使用效果

1.关于 fish

直接上官网:fishshell.com/

fish官网介绍

漂亮的官网,智能的命令行工具。简洁的阐述一下:fish是一个智能且用户友好的命令行 适用于Linux、macOS和其他系列的shell。

Q: 哦~ 天呐,没看到说支持Windows系统。怎么办😰?

A: 不要慌,多看看官网介绍文档。

啊哈~ 看到啦~ 有的,有的,有的。

win系统安装指南?

如上图中的3个选项。我第一次折腾的时候选择的是第一个Cygwin官网:cygwin.com/,虽然能够成功使用上fish,但是吧,就是感觉不太舒服。

于是,我又开始折腾本篇分享的主角:MSYS2官网:www.msys2.org/


2.安装 MSYS2

折腾第一步:进入官网,翻看文档。 小伙伴一定要学会多看看文档啊!这里就不介绍了,直接开始安装:

MSYS2安装

简单粗暴,下载安装即可。

注意:下载地址是 github,国内网络可能下载失败! 所以还是简单高科技一下吧😄。

MSYS2安装目录

如图所示,安装目录会有这些.exe,都可以双击运行啦~ 至于他们几个有什么区别,就不细说了。想知道的就看看官网吧!

OK,双击运行msys2.exe

运行示例

安装MSYS2大功告成!如图现在已经可以在这里面使用一些Linux命令啦~

提示:Ctrl+L 可清屏。


3.MSYS2 安装 fish

在 fish 官网我们看到如下图所示:

安装fish

可以通过 pacman -S fish 命令来安装 fish。 试试呗~ 又不要钱

输入 Y,开始安装 fish。

相当快~😎

此时命令行输入fish 即可开始体验 fish 啦~ 如图:

fish 初体验

输入 cmd 再按 Tab 键,智能提示出来啦~ 😎


4.让MSYS2默认使用fish

关于这个问题,还是兜兜转转了一会儿呢。可以看看MSYS2官网,官网有这样写到:

关于启动器

看样子需要编辑编辑 msys2_shell.cmd 这个文件啦~ 然后启动的时候,需要双击运行这个msys2_shell.cmd,而不是目录下的那些.exe文件。问题不大,毕竟咱是想要在任意位置打开命令行,肯定得有个入口文件。打开文件可看到这里有个:

默认LOGINSHELL

我们把这个 LOGINSHELL=bash 改成 LOGINSHELL=fish 即可:

改成默认fish

OK,当我们双击运行 msys2_shell.cmd 的时候,可以看到:

自动进入fish

至此,MSYS2默认使用fish搞定。


5.让win11终端默认使用fish

win11终端已默认使用 Windows Terminal啦, 如果你不是 win11, 需要自己安装个Windows Terminal咯。

开搞~

▲打开终端设置

▲点击 添加新配置文件

▲配置名称,和命令行,命令行就是 MSYS2安装目录下的 msys2_shell.cmd 并加上参数 -defterm -here -no-start点击保存。

如: C:\msys64\msys2_shell.cmd -defterm -here -no-start


之前折腾😓忘了加上启动参数~ 启动终端直接就是启动MSYS2软件了。

这里贴上终端的配置文件路径(win+R运行即可):

%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json


▲配置终端默认使用fish

至此,我们可以在任意位置开始使用 fish 啦,右键选择在终端中打开。 来看看效果图:

任意位置进入fish

思考🤔,如果使用其他终端软件,能否配置并使用 fish 呢?毕竟不是所有人都喜欢使用 win11 系统的终端。

6.vscode 默认终端使用 fish

系统搞定了,那肯定自己的开发工具也得齐活一呀~

认真看了官网的小伙伴,估计已经知道怎么弄了吧😄。

直接先上个MSYS2官网图:

vscode配置

上图可见,其实和终端的配置几乎一样,就是去执行msys2_shell.cmd

详细步骤如下:

  • 1.打开设置

  • 2.点击源码视图

  • 3.添加配置
{
  "terminal.integrated.profiles.windows": {
      // 这个 fish 指终端显示的名称
      "fish": {
          "path": "cmd.exe",
          "args": [
              "/c",
              // 这里写你 msys2 安装的目录
              // -ucrt64 可替换成 你喜欢的 msys2 终端类型
              "C:\\msys64\\msys2_shell.cmd -defterm -here -no-start -ucrt64"
          ]
      }
  },
  // 设置默认的终端 fish 就是上面配置终端名称
  "terminal.integrated.defaultProfile.windows": "fish"
}

如图:

最终效果如下:


总结

  • 官方文档还是很有必要看一看的,尤其是在调研/学习新东西的时候
  • fish是一个智能简洁且强大的命令行工具,并且支持扩展自己的脚本,简直爽歪歪
  • 试错了不要怕,思考一下它的原理,再去搜索对应的方法/答案

自己的生产力工具,就是要折腾的漂漂亮亮!

欢迎各位码友转发留言反馈,觉得不错就点个赞再走咯~