powershell美化

powershell美化

写在前面

除了安装命令,其他都是测试命令,后续再写进配置文件

安装主题控件

安装主题oh-my-posh,powershell中执行

winget install JanDeDobbeleer.OhMyPosh -s winget
oh-my-posh init pwsh | Invoke-Expression # 查看效果,这里可能不能显示符号

点击加号旁边进入设置,左边点击powershell,向下滑点击外观,将字体改成nerd类型的字体,也能到Nerd Fonts - Iconic font aggregator, glyphs/icons collection, & fonts patcher下载字体

也能直接改默认

Get-PoshThemes # 查看主题
# 选择并应用一个主题
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\theme.json" | Invoke-Expression
# 将 $env:POSH_THEMES_PATH\theme.json 替换为实际的主题文件路径,运行$env:POSH_THEMES_PATH可以看到主题的绝对路径

powershell模块管理基础命令

1. 安装模块

使用 Install-Module 命令从 PowerShell Gallery 安装模块:

Install-Module -Name ModuleName -Force

2. 导入模块

使用 Import-Module 命令加载模块,使其命令可用:

Import-Module -Name ModuleName

3. 查看已安装模块

使用 Get-Module 查看当前会话中已加载的模块,或者使用 -ListAvailable 参数查看系统上所有已安装的模块:

# 查看当前会话中已加载的模块
Get-Module# 查看系统上所有已安装的模块
Get-Module -ListAvailable

4. 获取模块命令

使用 Get-Command 查看某个模块中的所有命令:

Get-Command -Module ModuleName

5. 查看模块信息

使用 Get-Module 查看模块的详细信息:

Get-Module -Name ModuleName

6. 更新模块

使用 Update-Module 更新已安装的模块:

Update-Module -Name ModuleName

7. 卸载模块

使用 Remove-Module 卸载模块,从当前会话中移除:

Remove-Module -Name ModuleName

8. 查找模块

使用 Find-Module 从 PowerShell Gallery 查找模块:

Find-Module -Name ModuleName

9. 保存模块

使用 Save-Module 将模块保存到本地文件夹,而不是直接安装:

Save-Module -Name ModuleName -Path C:\Path\To\Save

10. 发布模块

使用 Publish-Module 将模块发布到 PowerShell Gallery(需要先进行配置和认证):

Publish-Module -Name ModuleName -NuGetApiKey 'YourApiKey'

示例:安装和使用 PSReadLine 模块

下面是一个完整的示例,展示了如何安装、导入和使用 PSReadLine 模块:

# 安装 PSReadLine 模块
Install-Module -Name PSReadLine -Force# 导入 PSReadLine 模块
Import-Module -Name PSReadLine# 查看 PSReadLine 模块中的命令
Get-Command -Module PSReadLine# 设置 PSReadLine 选项(例如,设置语法高亮颜色)
Set-PSReadLineOption -PredictionSource History# 卸载 PSReadLine 模块(从当前会话中移除)
Remove-Module -Name PSReadLine

安装插件(可选)

首先设置PSGallery为受信任存储库

要将PSGallery设置为受信任的存储库,可以运行以下命令:

Set-PSRepository -Name 'PSGallery' -InstallationPolicy Truste

PSReadLine

Install-Module -Name PSReadLine -Scope CurrentUser -Force -SkipPublisherCheck

我的配置附上

Import-Module PSReadLine
# 设置 PSReadLine 的编辑模式为 Emacs 风格
# 禁用提示音
# 设置历史预测源为命令历史
# 设置预测视图样式为列表视图
# 启用工具提示功能
# 防止保存历史记录中的重复命令
Set-PSReadLineOption -EditMode Emacs `-BellStyle None `-PredictionSource History `-PredictionViewStyle ListView `-ShowToolTips `-HistoryNoDuplicates `-Colors @{ # 设置不同元素的颜色,如命令、参数、运算符、变量、字符串、数字、成员、类型、和默认颜色Command = 'Cyan'Parameter = 'Yellow'Operator = 'Red'Variable = 'Green'String = 'Magenta'Number = 'White'Member = 'DarkYellow'Type = 'DarkCyan'Default = 'Gray'}# 增量搜索,你在键入时会动态显示匹配项
Set-PSReadLineKeyHandler -Chord Ctrl+R -Function ReverseSearchHistory
# 逐步搜索,每按一次快捷键会找到下一个匹配项
#Set-PSReadLineKeyHandler -Chord 'Ctrl+r' -Function HistorySearchBackward # Shows navigable menu of all options when hitting Tab
Set-PSReadLineKeyHandler -Key Tab -Function Complete
#Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete

z

Install-Module -Name Z -Scope CurrentUser -Force -SkipPublisherCheck # 安装

安装完成后,使用以下命令导入 z 模块:

Import-Module Z
使用 Z 模块
切换到目录

使用 z 命令加上目录的部分名称,可以快速切换到该目录:

z foldername

例如,假设你经常访问名为 Projects 的目录,你可以通过以下命令快速跳转到该目录:

z projects
显示目录历史

使用 -l 参数列出所有之前访问过的目录历史:

z -l

posh-git

Install-Module posh-git -Scope CurrentUser -Force # 安装
Import-Module posh-git # 导入

该模块管理和监视 Git 仓库的状态,进入git目录就能看到

PSFzf

提供了在命令行中进行快速模糊搜索和选择的功能

Set-PsFzfOption -PSReadLineChordProvider 'Ctrl+f' -PSReadLineChordReverseHistory 'Ctrl+r'

Set-PsFzfOption 命令用于配置 PSFzf 模块的选项,以定制键绑定和其他行为,将 Ctrl+f 设置为启动模糊搜索,Ctrl+r 设置为反向搜索历史记录的功能,使用这个可以不用上面那个,或者换个快捷键

添加别名

Set-Alias ll ls
Set-Alias g git
Set-Alias grep findstr

我的部分别名

设置环境变量

$env:http_proxy="http://127.0.0.1:10809"
$env:puser = "C:\Users\xxx\Documents\PowerShell\Microsoft.PowerShell_profile.ps1"

上面的用处是在命令行执行$env:http_proxy就可以改变powershell的代理端口,执行cat $env:puser可以查看powershell的配置文件

加入配置文件

执行$PROFILE可以得到配置文件目录,可以按目录创建文件,编辑文件,我的部分代码如下

# Oh My Posh configuration
oh-my-posh init pwsh --config "C:\Users\xxx\AppData\Local\Programs\oh-my-posh\themes\night-owl.omp.json" | Invoke-Expression# Import other modules
Import-Module z
Import-Module posh-git
#Icons
Import-Module Terminal-Icons# PSReadLine options
Import-Module PSReadLine
# 设置 PSReadLine 的编辑模式为 Emacs 风格
# 禁用提示音
# 设置历史预测源为命令历史
# 设置预测视图样式为列表视图
# 启用工具提示功能
# 防止保存历史记录中的重复命令
Set-PSReadLineOption -EditMode Emacs `-BellStyle None `-PredictionSource History `-PredictionViewStyle ListView `-ShowToolTips `-HistoryNoDuplicates `-Colors @{ # 设置不同元素的颜色,如命令、参数、运算符、变量、字符串、数字、成员、类型、函数和默认颜色Command = 'Cyan'Parameter = 'Yellow'Operator = 'Red'Variable = 'Green'String = 'Magenta'Number = 'White'Member = 'DarkYellow'Type = 'DarkCyan'
#                         Function = 'Blue'Default = 'Gray'}# 增量搜索,你在键入时会动态显示匹配项
#Set-PSReadLineKeyHandler -Chord Ctrl+R -Function ReverseSearchHistory
# 逐步搜索,每按一次快捷键会找到下一个匹配项#
#Set-PSReadLineKeyHandler -Chord 'Ctrl+r' -Function HistorySearchBackward # Shows navigable menu of all options when hitting Tab
Set-PSReadLineKeyHandler -Key Tab -Function Complete
#Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete#Utilities
function which ($command) {Get-Command -Name $command -ErrorAction SilentlyContinue |Select-Object -ExpandProperty Path -ErrorAction SilentlyContinue
}#Fzf
Import-Module PSFzf
Set-PsFzfOption -PSReadLineChordProvider 'Ctrl+f' -PSReadLineChordReverseHistory 'Ctrl+r'# Alias
Set-Alias ll ls
Set-Alias g git
Set-Alias grep findstr#env
$env:http_proxy="http://127.0.0.1:10809" #启动改变代理
$env:puser = "C:\Users\xxx\Documents\PowerShell\Microsoft.PowerShell_profile.ps1"

其中which函数实现了linux上的函数功能,其他的前面有讲,保存,启动powershell

vscode图标不显示

更改字体为CaskaydiaCove Nerd Font Mono,改成可显示就行,右上角文件->首选项->设置,搜索terminal font,两个都改了吧

请添加图片描述

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

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

相关文章

2024/12/22周报

文章目录 摘要Abstract深度学习文献阅读1. 背景与问题2. 发明目的3. 方法与实现3.1 数据采集与变量选取3.2 BP神经网络建立稳态预测模型3.3 构建多目标优化函数3.4 多目标差分进化算法求解优化3.5 最优决策变量筛选3.6 实时控制 4. 系统实现5. 实际效果与验证5.1 仿真验证5.2 神…

前端编程训练 异步编程篇 请求接口 vue与react中的异步

文章目录 前言代码执行顺序的几个关键点接口请求vue与react中的异步 vue中的异步react的state修改异步 前言 本文是B站三十的前端课的笔记前端编程训练,异步编程篇 代码执行顺序的几个关键点 我们可以理解为代码就是一行一行,一句一句是执行(定义变…

Excel生成DBC脚本源文件

Excel制作 新建一个Excel,后缀为“.xls” 工作本名称改为“CAN_Matrix” 在首行按照列来起名字,在里面只需要填写必须的内容即可。 列数名称第0列Message Name第1列Message Format第2列Message ID第3列Message Length (byte)第4列Message Transmitte…

16.2、网络安全风险评估技术与攻击

目录 网络安全风险评估技术方法与工具 网络安全风险评估技术方法与工具 资产信息收集,可以通过调查表的形式把我们各类的资产信息进行一个统计和收集,掌握被评估对象的重要资产分布,进而分析这些资产关联的业务面临的安全威胁以及存在的安全…

C++-----函数与库

数学中的函数与编程中的函数对比 数学中的函数 - 数学函数是一种映射关系,例如,函数\(y f(x)x^{2}\),对于每一个输入值\(x\),都有唯一确定的输出值\(y\)。它侧重于描述变量之间的数量关系,通常通过公式来表示这种关系…

Loki 微服务模式组件介绍

目录 一、简介 二、架构图 三、组件介绍 Distributor(分发器) Ingester(存储器) Querier(查询器) Query Frontend(查询前端) Index Gateway(索引网关&#xff09…

C++ OpenGL学习笔记(1、Hello World空窗口程序)

终于抽出时间系统学习OpenGL 教程,同时也一步一步记录怎样利用openGL进行加速计算。 目录 1、环境准备1.1、库的下载1.2、库的选择及安装 2、OpenGL第一个项目,Hello World!2.1、新建hello world控制台项目2.2、配置openGL环境2.2.1 包含目录配置2.2.2 …

Linux系统命令基础

Linux命令⾏ [pypylinux ~]$ 普通⽤户py,登陆后 [rootpylinux ~]# 超级⽤户root,登录后root代表当前登录的⽤户 分隔符pylinux 主机名~ 当前的登录的位置,此时是家⽬录# 超级⽤户身份提示符 $ 普通⽤户身份提示符操作系统⽬录分隔符 Linux目录…

不同版本的 Redis 的键值对内存占用情况示例

不同版本的 Redis 的键值对内存占用情况示例 文章目录 不同版本的 Redis 的键值对内存占用情况示例Redis 6.0redisObjectdictEntrysds🍀 数据结构🍀 sdslen() 函数🍀 sdsReqType() 函数🍀 sdsHdrSize() 函数 内存分配 - malloc() …

实现 WebSocket 接入文心一言

目录 什么是 WebSocket? 为什么需要 WebSocket? HTTP 的局限性 WebSocket 的优势 总结:HTTP 和 WebSocket 的区别 WebSocket 的劣势 WebSocket 常见应用场景 WebSocket 握手过程 WebSocket 事件处理和生命周期 WebSocket 心跳机制 …

2024.7 XAI 遇见 LLM:可解释 AI 与大型语言模型之间关系的调查

https://arxiv.org/pdf/2407.15248 问题 Q1:XAI 技术当前如何与 LLMs 集成?Q2:将 LLMs 与 XAI 方法融合的新兴趋势是什么?Q3:当前相关文献存在哪些差距,哪些领域需要进一步研究? 挑战 LLMs …

前端滚动锚点(点击后页面滚动到指定位置)

三个常用方案: 1.scrollintoView 把调用该方法的元素滚动到屏幕的指定位置,中间,底部,或者顶部 优点:方便,只需要获取元素然后调用 缺点:不好精确控制,只能让元素指定滚动到中间&…

前端笔记——大数据量浏览器卡顿优化思路

多任务数据量处理卡顿问题 任务分批次 为避免阻塞,可以将 长时间的单一任务 拆分成多个小任务并分批执行。这样可以在两次任务之间让浏览器有时间处理渲染、用户输入等操作。两种常见方法: setTimeout 方法: 使用 setTimeout 将任务分段&a…

数智化转型是什么?

数智化转型是指企业通过数字化(Digitalization)和智能化(Intelligentization)技术的结合,推动业务流程、产品服务、组织管理的全面升级,从而提升效率、增强创新能力,并实现更高价值。相比传统的…

RIP实验

要求及分析 路由器上分别配置环回 连接路由器的线路网段为12.1.1.0/24、23.1.1.1.0/24 R1和R3连接的网络地址分别为192.168.1.0/24/192.168.2.0/24 整个网络使用RIP达到全网可达 配置 先配置路由器各接口ip和环回和pc ip网关掩码(图略) 进行 RI…

Oracle 中间件 Webcenter Portal服务器环境搭建

环境信息 服务器基本信息 如下表,本次安装总共使用2台服务器,具体信息如下: Webcenter1服务器 归类 SOA服务器 Ip Address 172.xx.xx.xx.xx HostName wcc01.xxxxxx.com Alias wccprd01 Webcenter2服务器 归类 OSB服务器 Ip Addr…

macOS 配置 vscode 命令行启动

打开 vscode 使用 cmd shift p 组合快捷键,输入 install 点击 Install ‘code’ command in PATH Ref https://code.visualstudio.com/docs/setup/mac

3、交换机IP路由功能

每个用例前自己最好先画个图,不然容易绕晕,这篇文章写好久了,自己都觉得有点绕 一、直连路由 如果一个交换机与另一个交换机时直连着的并且他们用来连接的端口属于同网段,那么这种情况下他们就属于直连路由。不需要做任何配置便可…

分层架构 IM 系统之多媒体功能设计与实现

现在 IM 系统已经不仅限于文本消息的通讯了,多媒体数据占据越来越多的比重,比如:文件传输、语音通话、视频通话等。 在前面的文章(《基于需求分析模型来结构化剖析 IM 系统》)中我们分析过,“多媒体消息”…

0.gitlab ubuntu20.04 部署问题解决

安装依赖: ① sudo apt-get update 出现: 解决方式: 去 /etc/apt/sources.list.d 这个目录删除或注释对应的list文件 第三方软件的源一般都以list文件的方式放在 /etc/apt/sources.list.d 这个目录 重新运行sudo apt-get update 安装…