两款【linux字符界面下】显示【菜单】,【选项】的powershell脚本模块介绍
powershell linux ps1 menu choice Multiselect 传教士 菜单
powershell 传教士 原创文章 始于2017-02-22,文章随时更新,目前博客园为最新版。 允许转载,但必须保留名字和出处,否则追究法律责任。
问:去哪里查找菜单模块?
答: 微软官方软件库。 https://www.powershellgallery.com/
问:如何查找菜单模块?
答: find-module *menu*
返回
MenuShell
ps-menu
ServerOpsMenu
CliMenu
SLMenu
问:如何验证这些模块?
答: 靠兄弟我帮忙,人肉验证。
-------------ps-Menu篇-------------
问:linux下,如何安装?
答: install-module ps-menu
问:模块安装到哪个目录去了?
答: /opt/microsoft/powershell/6.0.xxx版本号/Modules
问:如何使用?
答:
代码:
$a = menu -menuitem '吃了米饭','吃了面条','吃了大蒜' #单选
$b = menu -menuitem '吃了米饭','吃了面条','还有榨菜' -Multiselect #多选
上述代码中文显示正常。测试环境centos7
图:
点评:
这个模块极其简单, 用
if ($a -eq '吃了大蒜') { xxx命令 } 来使用。 多选则返回数组。是个人就会,呵呵。
-------------CliMenu篇-------------
问:官网在哪?
答: https://github.com/torgro/cliMenu
问:linux下,如何安装?
答: install-module climenu
问:模块安装到哪个目录去了?
答: /opt/microsoft/powershell/6.0.xxx版本号/Modules
问:如何使用?
答:
Set-MenuOption -MaxWith 80 #最大宽度
Set-MenuOption -MenuFillChar "#" -MenuFillColor DarkYellow #外框符号,符号颜色
Set-MenuOption -Heading "PowerShell 让微软云再次强大" -HeadingColor DarkCyan #标题信息,标题颜色
$mainMenu = New-Menu -Name "main" -DisplayName "Main Menu"
$menuItem1 = New-MenuItem -Name "m1" -DisplayName "立马开始学习?" -Action { Write-host "选择了1" } -DisableConfirm:$true
$menuItem2 = New-MenuItem -Name "m2" -DisplayName "删除后跑路?" -Action { Write-host "选择了2" } -DisableConfirm:$true
$menuItem1 | Add-MenuItem -Menu main
$menuItem2 | Add-MenuItem -Menu main
Clear-Host
Show-Menu
图:
上述代码中文显示正常。测试环境centos7
------------- choice篇 -------------
问:如何安装?
答: powershell自带,无需安装。
问:如何使用?
答: win,linux通用的代码:
$title = "标题"
$message = "询问信息。立马开始学习ps,还是格式化跑路?"
$yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes","选问号后出现是的帮助信息。传教士"
$no = New-Object System.Management.Automation.Host.ChoiceDescription "&No","选问号后出现否的帮助信息。2017分享"
$options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)
$result = $host.ui.PromptForChoice($title,$message,$options,0) switch ($result)
{
0 { "你开始学ps了" }
1 { "你格式化跑路了" }
}
点评: 自带的很简单,主要用于选是否。
-完-