powershell美化

打印 上一主题 下一主题

主题 739|帖子 739|积分 2217

powershell美化

写在前面

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

安装主题oh-my-posh,powershell中执行
  1. winget install JanDeDobbeleer.OhMyPosh -s winget
  2. oh-my-posh init pwsh | Invoke-Expression # 查看效果,这里可能不能显示符号
复制代码
点击加号旁边进入设置,左边点击powershell,向下滑点击外观,将字体改成nerd类型的字体,也能到Nerd Fonts - Iconic font aggregator, glyphs/icons collection, & fonts patcher下载字体
也能直接改默认
  1. Get-PoshThemes # 查看主题
  2. # 选择并应用一个主题
  3. oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\theme.json" | Invoke-Expression
  4. # 将 $env:POSH_THEMES_PATH\theme.json 替换为实际的主题文件路径,运行$env:POSH_THEMES_PATH可以看到主题的绝对路径
复制代码
powershell模块管理底子命令

1. 安装模块

利用 Install-Module 命令从 PowerShell Gallery 安装模块:
  1. Install-Module -Name ModuleName -Force
复制代码
2. 导入模块

利用 Import-Module 命令加载模块,使其命令可用:
  1. Import-Module -Name ModuleName
复制代码
3. 检察已安装模块

利用 Get-Module 检察当前会话中已加载的模块,或者利用 -ListAvailable 参数检察体系上全部已安装的模块:
  1. # 查看当前会话中已加载的模块
  2. Get-Module
  3. # 查看系统上所有已安装的模块
  4. Get-Module -ListAvailable
复制代码
4. 获取模块命令

利用 Get-Command 检察某个模块中的全部命令:
  1. Get-Command -Module ModuleName
复制代码
5. 检察模块信息

利用 Get-Module 检察模块的详细信息:
  1. Get-Module -Name ModuleName
复制代码
6. 更新模块

利用 Update-Module 更新已安装的模块:
  1. Update-Module -Name ModuleName
复制代码
7. 卸载模块

利用 Remove-Module 卸载模块,从当前会话中移除:
  1. Remove-Module -Name ModuleName
复制代码
8. 查找模块

利用 Find-Module 从 PowerShell Gallery 查找模块:
  1. Find-Module -Name ModuleName
复制代码
9. 保存模块

利用 Save-Module 将模块保存到当地文件夹,而不是直接安装:
  1. Save-Module -Name ModuleName -Path C:\Path\To\Save
复制代码
10. 发布模块

利用 Publish-Module 将模块发布到 PowerShell Gallery(需要先进行设置和认证):
  1. Publish-Module -Name ModuleName -NuGetApiKey 'YourApiKey'
复制代码
示例:安装和利用 PSReadLine 模块

下面是一个完备的示例,展示了如何安装、导入和利用 PSReadLine 模块:
  1. # 安装 PSReadLine 模块
  2. Install-Module -Name PSReadLine -Force
  3. # 导入 PSReadLine 模块
  4. Import-Module -Name PSReadLine
  5. # 查看 PSReadLine 模块中的命令
  6. Get-Command -Module PSReadLine
  7. # 设置 PSReadLine 选项(例如,设置语法高亮颜色)
  8. Set-PSReadLineOption -PredictionSource History
  9. # 卸载 PSReadLine 模块(从当前会话中移除)
  10. Remove-Module -Name PSReadLine
复制代码
安装插件(可选)

首先设置PSGallery为受信任存储库
要将PSGallery设置为受信任的存储库,可以运行以下命令:
  1. Set-PSRepository -Name 'PSGallery' -InstallationPolicy Truste
复制代码
PSReadLine

  1. Install-Module -Name PSReadLine -Scope CurrentUser -Force -SkipPublisherCheck
复制代码
我的设置附上
  1. Import-Module PSReadLine
  2. # 设置 PSReadLine 的编辑模式为 Emacs 风格
  3. # 禁用提示音
  4. # 设置历史预测源为命令历史
  5. # 设置预测视图样式为列表视图
  6. # 启用工具提示功能
  7. # 防止保存历史记录中的重复命令
  8. Set-PSReadLineOption -EditMode Emacs `
  9.                      -BellStyle None `
  10.                      -PredictionSource History `
  11.                      -PredictionViewStyle ListView `
  12.                      -ShowToolTips `
  13.                      -HistoryNoDuplicates `
  14.                      -Colors @{ # 设置不同元素的颜色,如命令、参数、运算符、变量、字符串、数字、成员、类型、和默认颜色
  15.                          Command = 'Cyan'
  16.                          Parameter = 'Yellow'
  17.                          Operator = 'Red'
  18.                          Variable = 'Green'
  19.                          String = 'Magenta'
  20.                          Number = 'White'
  21.                          Member = 'DarkYellow'
  22.                          Type = 'DarkCyan'
  23.                          Default = 'Gray'
  24.                      }
  25. # 增量搜索,你在键入时会动态显示匹配项
  26. Set-PSReadLineKeyHandler -Chord Ctrl+R -Function ReverseSearchHistory
  27. # 逐步搜索,每按一次快捷键会找到下一个匹配项
  28. #Set-PSReadLineKeyHandler -Chord 'Ctrl+r' -Function HistorySearchBackward
  29. # Shows navigable menu of all options when hitting Tab
  30. Set-PSReadLineKeyHandler -Key Tab -Function Complete
  31. #Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
复制代码
z

  1. Install-Module -Name Z -Scope CurrentUser -Force -SkipPublisherCheck # 安装
复制代码
安装完成后,利用以下命令导入 z 模块:
  1. Import-Module Z
复制代码
利用 Z 模块

切换到目次

利用 z 命令加上目次的部分名称,可以快速切换到该目次:
  1. z foldername
复制代码
例如,假设你经常访问名为 Projects 的目次,你可以通过以下命令快速跳转到该目次:
  1. z projects
复制代码
体现目次汗青

利用 -l 参数列出全部之前访问过的目次汗青:
  1. z -l
复制代码
posh-git

  1. Install-Module posh-git -Scope CurrentUser -Force # 安装
  2. Import-Module posh-git # 导入
复制代码
该模块管理和监视 Git 仓库的状态,进入git目次就能看到
PSFzf

提供了在命令行中进行快速模糊搜索和选择的功能
  1. Set-PsFzfOption -PSReadLineChordProvider 'Ctrl+f' -PSReadLineChordReverseHistory 'Ctrl+r'
复制代码
Set-PsFzfOption 命令用于设置 PSFzf 模块的选项,以定制键绑定和其他举动,将 Ctrl+f 设置为启动模糊搜索,Ctrl+r 设置为反向搜索汗青记录的功能,利用这个可以不用上面谁人,或者换个快捷键
添加别名

  1. Set-Alias ll ls
  2. Set-Alias g git
  3. Set-Alias grep findstr
复制代码
我的部分别名
设置环境变量

  1. $env:http_proxy="http://127.0.0.1:10809"
  2. $env:puser = "C:\Users\xxx\Documents\PowerShell\Microsoft.PowerShell_profile.ps1"
复制代码
上面的用处是在命令行执行$env:http_proxy就可以改变powershell的代理端口,执行cat $env:puser可以检察powershell的设置文件
加入设置文件

执行$PROFILE可以得到设置文件目次,可以按目次创建文件,编辑文件,我的部分代码如下
  1. # Oh My Posh configurationoh-my-posh init pwsh --config "C:\Users\xxx\AppData\Local\Programs\oh-my-posh\themes\night-owl.omp.json" | Invoke-Expression# Import other modulesImport-Module zImport-Module posh-git#IconsImport-Module Terminal-Icons# PSReadLine optionsImport-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 TabSet-PSReadLineKeyHandler -Key Tab -Function Complete#Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete#Utilitiesfunction which ($command) {        Get-Command -Name $command -ErrorAction SilentlyContinue |         Select-Object -ExpandProperty Path -ErrorAction SilentlyContinue}#FzfImport-Module PSFzfSet-PsFzfOption -PSReadLineChordProvider 'Ctrl+f' -PSReadLineChordReverseHistory 'Ctrl+r'
  2. # AliasSet-Alias ll ls
  3. Set-Alias g git
  4. Set-Alias grep findstr
  5. #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,两个都改了吧


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81428

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表