powershell - Powershell:尝试将背景/前景颜色更改为文本输出(无写入主机)
问题描述
正如标题所示,我正在尝试更改由以下方式输出的文本的前/背景颜色:{$_.Name +" Drive: Used: "+"{0:N2}" -f($_.Used/1gb) + " Free: "+"{0:N2}" -f($_.Free/1gb) + " Total: "+"{0:N2}" -f(($_.used/1gb) + ($_.Free/1gb));
Drive,Used,Free,Total text output 在哪里我想添加一些前景和背景,但我不知道该怎么做。
我正在尝试从互联网上戳脚本,以便使用Powershell学习一些新东西。
完整脚本:Get-PSDrive | Where-Object{$_.Free -gt 1} | ForEach-Object{$count = 0 ; "`n" }{$_.Name + " Drive: Used: " +"{0:N2}" -f($_.Used/1gb) + " Free: "+"{0:N2}" -f($_.Free/1gb) + " Total: "+"{0:N2}" -f(($_.used/1gb) + ($_.Free/1gb)); $count = $count + $_.Free;}{Write-Host "Total Free Space: " ("{0:N2}" -f($count/1gb)) -ForegroundColor White -BackgroundColor Black}
解决方案
Windows 10 + PowerShell 5.1 及更高版本默认支持 ANSI 转义序列。
ANSI 转义码 #DOS 和 Windows - 维基百科
并且您需要[esc]
在 PowerShell 中使用特殊字符。
# PowerShell version 5
"$([char]0x1b)[30;41m YOUR_TEXT_HERE $([char]0x1b)[0m"
# PowerShell version 6+
"`e[30;41m YOUR_TEXT_HERE `e[0m"
参考
推荐阅读
- python - 为什么我的精灵在静止时不会不断出现而不是通过图像进行动画处理
- typescript - 扩展类型的泛型和 Typescript 中的普通类型有什么区别?
- sql - 如何将排序记录伪装成编辑器的行号
- sharepoint - 如何使用 Power App 检查 SharePoint 中的重复列表?
- node.js - 如何使用 node.js 从服务器端刷新浏览器?
- python - 如何在 Windows 上一致地分割路径
- pandas - Pandas Dataframe 重命名 Row 中的重复值
- php - 制作标签标签中心
- r - 添加新变量金融数据集 r
- python - 将子网内层的参数重用到该子网外的层