当前位置: 首页 > article >正文

【保姆级教程】使用 oh-my-posh 和 clink 打造个性化 PowerShell 和 CMD

内容预览 ≧∀≦ゞ

  • 终端美化指南—— oh-my-posh 和 clink 篇
    • 引言
    • 一、准备工作
      • 默认终端:Windows Terminal
        • 离线安装步骤
      • 包管理器:scoop
        • 为什么选择使用 Scoop 安装?
        • scoop 安装
      • 字体下载
    • 二、配置 Windows Terminal
    • 三、配置 oh-my-posh
      • 安装
      • 激活 oh-my-posh
        • 编辑 PowerShell 配置文件
      • 配置主题
        • 查看主题列表
        • 使用自定义主题
    • 四、配置 clink
      • 安装
      • 激活 clink
        • 设置 clink 自动运行
        • 启用自动补全
        • 查看 clink 配置
      • 配置 oh-my-posh 样式在 CMD 中显示
      • CMD 的其他增强操作

终端美化指南—— oh-my-posh 和 clink 篇


引言

在日常开发中,谁不想要一个赏心悦目的终端界面呢?一旦配置得当,不仅让工作环境更加个性化,还能让日常操作更加顺畅高效。本文将手把手带你快速上手 oh-my-posh 和 clink 的配置,让你的 PowerShell 和 CMD 焕然一新。除了详细的步骤,还会贴心分享一些易踩的坑和实用小技巧,希望在美化终端的路上帮你少走弯路。


一、准备工作

默认终端:Windows Terminal

推荐使用 Windows Terminal 作为默认终端。作为 Windows 11 自带的终端,它在多标签、个性化配置和多终端支持上表现得非常不错,完全能满足日常使用需求。既然系统已经提供了这样一款功能强大的工具,我们大可不必折腾 wezterm 等其他第三方软件了 :)

如果你使用的是 Windows 10 或精简版系统,可能没有预装 Windows Terminal。这种情况下,可以通过微软商店在线安装,或者选择离线安装。

离线安装步骤
  1. 前往 GitHub Releases 页面 下载 .msixbundle 后缀的安装包(例如,Microsoft.WindowsTerminal_1.11.3471.0_8wekyb3d8bbwe.msixbundle)。
  2. 在下载目录中打开 PowerShell,执行以下命令进行安装:
    Add-AppxPackage .\Microsoft.WindowsTerminal_1.11.3471.0_8wekyb3d8bbwe.msixbundle
    

安装完成后,输入wt即可进入Windows Terminal。

包管理器:scoop

为什么选择使用 Scoop 安装?

使用 Scoop 作为包管理器来安装开发工具,比如 oh-my-poshclink,相比直接从微软商店安装或下载安装包,有几个明显的优势:

  • 更便捷的安装和更新
    Scoop 一行命令就能完成安装,既不需要手动下载安装包,也不必逐个步骤操作。安装完成后可以直接运行,更新时也同样简单,只需运行 scoop update <package_name> 即可完成。

  • 自动配置环境变量
    Scoop 将所有安装的软件都自动放在 scoop\shims 文件夹中,并将其路径加入系统环境变量。因此,安装完成后可以直接在终端中使用命令,而无需手动配置路径。

  • 轻量又优雅
    Scoop 将所有软件都集中在用户目录下管理,不会修改系统目录。这种优雅的管理方式避免了对系统的影响,也更易于管理和卸载。

  • 简洁的依赖管理
    Scoop 能自动安装软件的依赖项,避免了手动下载和配置的麻烦,极大简化了安装过程。

因此,使用 Scoop 不仅能简化安装和更新操作,还减少了配置环境变量的繁琐步骤,是一种方便又优雅的安装方式。

更多关于 Scoop 的介绍与使用技巧,可以参考以下文档:
https://muxiner.github.io/using-scoop/
https://khigh.top/archives/scoop

scoop 安装
  1. 设置 PowerShell 执行策略
    在安装 scoop 之前,需允许 PowerShell 执行脚本。可以在 PowerShell 中执行以下命令:

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    
  2. 安装 scoop
    在 PowerShell 中运行以下命令:

    irm get.scoop.sh | iex
    

    安装完成后,scoop 将自动配置环境变量,这意味着你可以在任何命令行窗口中直接使用 scoop 命令来安装、卸载或更新软件包。scoop 提供了便捷的包管理体验,可以帮助我们省去手动下载、配置和更新软件的麻烦。在本文中,我们将使用 scoop 来安装所有相关工具,包括 oh-my-posh 和 clink,让整个安装过程更加流畅高效。

在这里插入图片描述

字体下载

为了在 oh-my-posh 中正确显示各类图标,我们需要安装支持 Nerd Fonts 的字体。推荐下载 Meslo 或其他你喜欢的 Nerd Fonts 字体。安装方法如下:

  1. 前往 Nerd Fonts 官方 GitHub 页面 或访问 Nerd Fonts 下载页面 下载 Meslo 或其他字体包。
  2. 解压下载的文件,并右键安装所有 .ttf 字体文件。
  3. Windows Terminal 的设置中选择安装的 Nerd Fonts 字体(例如 MesloLGM NF),确保字体正常显示图标。

二、配置 Windows Terminal

找到PowerShell的外观设置

在这里插入图片描述

设置文本样式

在这里插入图片描述

设置背景图,透明度等

在这里插入图片描述

添加启动参数 -nologo 来隐藏 PowerShell 启动时的欢迎信息。这样,启动 PowerShell 时就不会显示欢迎信息。请注意,这个设置仅适用于 PowerShell,而不适用于 CMD。

在这里插入图片描述

同样,你可以设置 cmd 的外观,甚至将 cmd 设置为默认启动的终端

设置外观
设置默认启动

三、配置 oh-my-posh

oh-my-posh 是一个可以自定义命令行提示符样式的工具,支持丰富的主题和自定义选项。尽管它在资源占用上相对较大且启动速度较慢,但仍然受到许多开发者的青睐。

安装

在 PowerShell 中使用 scoop 安装 oh-my-posh:

scoop install oh-my-posh

在这里插入图片描述

确保 scoop\shims 路径已添加到环境变量中:

在这里插入图片描述

关于 shims 文件夹:scoop 创建的 shims 文件夹用于存放所有已安装应用的快捷方式,使得在命令行中可以直接调用这些程序,而无需指定完整路径。

激活 oh-my-posh

编辑 PowerShell 配置文件

oh-my-posh 需要在 PowerShell 配置文件中进行初始化。可以通过以下命令打开 PowerShell 的配置文件:

notepad $PROFILE

在这里插入图片描述

若提示找不到文件,可以手动创建,或使用以下命令直接新建配置文件并写入初始化代码

mkdir "$env:HOMEPATH\Documents\WindowsPowerShell"
Set-Content $env:HOMEPATH\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 'oh-my-posh init pwsh | Invoke-Expression'

保存文件后,重启 PowerShell 以使配置生效。若成功加载,oh-my-posh 会自动显示出美化后的提示符。

配置主题

查看主题列表

oh-my-posh 提供了多种预设主题,可以使用以下命令查看并选择自己喜欢的主题:

Get-PoshThemes
使用自定义主题

如果希望加载特定的主题文件,可以将主题路径指定到初始化命令中:

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\montys.omp.json" | Invoke-Expression

四、配置 clink

clink 是一款增强 CMD 功能的小工具,支持自动补全、命令历史等功能,极大提升了 CMD 的使用体验。

安装

在 PowerShell 中使用 scoop 安装 clink:

scoop install clink

激活 clink

设置 clink 自动运行

可以通过 autorun 命令设置 clink 自动运行,并使用quiet参数,这样每次启动 CMD 时 clink 会自动启用并禁用启动提示信息:

clink autorun install -- --quiet

使用quiet参数前后的区别如下图:

前
(使用前)

后
(使用后)

若只想在当前 CMD 会话中暂时体验 clink 功能,可使用以下命令:

clink inject
启用自动补全

clink 支持 autosuggest 自动补全功能,类似于 shell 中的 zsh 自动建议,可以通过以下命令启用该功能:

clink set autosuggest.enable true
查看 clink 配置

可以使用以下命令查看当前的 clink 配置信息:

clink info

配置 oh-my-posh 样式在 CMD 中显示

如果希望在 CMD 中同样展示 oh-my-posh 的样式,可以通过 Lua 脚本加载主题。具体步骤如下:

  1. 创建 Lua 配置文件
    C:\Users\xtj6\AppData\Local\clink 目录下(注意此路径需要改为你的用户名),新建一个名为 oh-my-posh.lua 的文件。

  2. 加载 oh-my-posh 主题
    在文件中写入以下代码,以将 oh-my-posh 的样式应用到 CMD:

    load(io.popen('oh-my-posh init cmd'):read("*a"))()
    
  3. 加载自定义主题
    若希望使用自定义主题,可以将命令更新为以下内容:

    load(io.popen('oh-my-posh init cmd --config="%POSH_THEMES_PATH%\\your-theme.omp.json"'):read("*a"))()
    

    注意:确保 POSH_THEMES_PATH 环境变量正确配置,your-theme.omp.json 为你的自定义主题文件名。

配置完成后,重新打开 CMD,即可看到应用了 oh-my-posh 的自定义提示符样式。

CMD 的其他增强操作

clink 可以在 CMD 中给常用的 Linux 指令(如 lsrm 等)设置别名,从而让习惯于 LInux 命令行的用户不会为常见命令的差异而困扰。关于如何实现这些指令的更多信息,可参考文章:使用clink优化cmd。


➤ 参考资料

  • https://www.bilibili.com/read/cv20467382/
  • https://halc.top/p/82bd449c
  • https://www.cnblogs.com/hongdada/p/16826311.html

最后,再次感谢您阅读本篇文章,如果您对文中内容有任何疑问或建议,欢迎在评论区与我交流!您的点赞和分享将是我继续创作的动力。


http://www.kler.cn/a/380726.html

相关文章:

  • UI自动化测试 —— CSS元素定位实践!
  • 【顶刊核心变量】上市公司企业数字创新数据(数字产品、流程、业务模式创新(2001-2023年)
  • git 与当前代码的修改进行重新合并
  • 浅谈QT中Tab键的切换逻辑
  • IMU应用于监测进食
  • VR 创业之路:从《I Expect You To Die》到未来展望
  • vue 使用docx-preview 预览替换文档内的特定变量
  • k8s Service四层负载:服务端口暴露
  • 【OJ题解】在字符串中查找第一个不重复字符的索引
  • WPF-实现多语言的静态(需重启)与动态切换(不用重启)
  • 这款Chrome 插件,帮助任意内容即可生成二维码
  • C语言---文件操作万字详细分析(6)
  • Charles抓包安装
  • 一个最简单的网络编程
  • 【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
  • git使用的一般流程
  • 一周内从0到1开发一款 AR眼镜 相机应用?
  • 浅谈——深度学习和马尔可夫决策过程
  • bert-base-chinese模型使用教程
  • Linux系统-日志轮询(logrotate)
  • 【Java语言】继承和多态(一)
  • FPGA实现图像处理算法的创新点
  • Handler源码和流程分析
  • 算法: 链表题目练习
  • 前端用docker部署
  • 总是忘记CSS中的transform 和transition的区别