两款【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 { "你格式化跑路了" }
}

点评: 自带的很简单,主要用于选是否。

-完-

两款【linux字符界面下】显示【菜单】,【选项】的powershell脚本模块介绍的更多相关文章

  1. Linux字符界面下用户账户的设置

    在Linux系统字符界面下创建.修改以及删除用户账户主要使用useradd,usermod和userdel这3个命令. 一.创建用户账户 创建用户账户就是在系统中创建一个新账户,然后为新账户分配用户U ...

  2. ubuntu字符界面下显示中文和调整分辨率

    1.sudo apt-get install zhcon 2.vi /etc/zhcon.conf  修改下面两行 x_resolution 1024 y_resolution 768 完成这两步后在 ...

  3. linux字符界面下root用户无法登录成功

    os: rhel5.6_x86_64 ———————————————————————————————————————————— 故障:图形界面登录正常,其他一切正常,但是切换到字符界面时,输入用户ro ...

  4. linux复习3:linux字符界面的操作

    一.前言 1.对linux服务器进行管理的时候,经常要进入字符界面进行操作,使用命令需要记住该命令的相关选项和参数.vi编辑器可以用于编辑任何ASCII文本,功能非常的强大,可以对文本进行创建.查找. ...

  5. 介绍两款Linux文件恢复工具,ext3grep与extundelete https://www.cnblogs.com/lazyfang/p/7699994.html

    介绍两款Linux文件恢复工具,ext3grep与extundelete,可能在关键时刻会有所帮助.ext3grep仅对ext3文件系统有效,extundelete对ext3与ext4文件系统都有效  ...

  6. Linux字符模式下如何设置/删除环境变量

    Linux字符模式下设置/删除环境变量方法: bash下 设置:export 变量名=变量值 删除:unset 变量名 csh下 设置:setenv 变量名 变量值 删除:unsetenv 变量名 h ...

  7. Linux下查看Python安装了哪些脚本模块

    Linux下查看Python安装了哪些脚本模块 1.什么是rpm ? rpm 即RedHat Package Management,是RedHat的发明之一 .现在包括OpenLinux.fedora ...

  8. Python+selenium下拉菜单选项

    案例:在我要自学网登录页面选择要保留的时间 具体页面如图所示: 使用前端工具查看部分页面代码: <select class="loinp" name="Cookie ...

  9. yum管理——linux字符界面安装图形化及两种界面的切换(3)

    1.查看yum软件包组 yum groups list 2.选择安装带 GUI 的服务器 yum groups install "带 GUI 的服务器" 3.字符界面切换为图形化界 ...

随机推荐

  1. UVa 129 困难的串

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  2. Newman的 power law 参数估计的程序matlab(转载)

    转自:http://blog.sciencenet.cn/blog-4716-46173.html 对于幂率分布的估计问题是个很复杂的问题(..., the empirical detection a ...

  3. 1.4.1. Core Data Helper 简介(Core Data 应用程序实践指南)

    有些支持Core Data的内置模板是在应用程序委托里面设置Core Data的.但是为了模块化,我们通过应用程序委托惰性地创建CoreDataHelper类的实例: 初始化托管对象模型 根据托管对象 ...

  4. Selenium IE6 Failed to load the library from temp directory: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\IED1C1.tmp

    项目中用到了使用Selenium打开IE浏览器.前期都是基于IE8+.Firefox.Chrome.项目后期开始现场测试时发现大部分客户还都是使用的Windows XP + IE6.结果可想而知,直接 ...

  5. vue初探

    vue初探 很多同学一定都听过MVVM.组件.数据绑定之类的专业术语,而vue框架正是这样的一种框架.vue的作用是:通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. 第一部分:vue介 ...

  6. HDU5832

    A water problem Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  7. js 计算月/周的第一天和最后一天

    因为项目开发中遇到需要向后台传本周的开始和结束时间,以及上一周的起止时间,就琢磨了半天,总算写出来一套,写篇文章是为了方便自己记忆,也是分享给需要的人,水平有限,写的不好请见谅: getDateStr ...

  8. 如何利用express新建项目(上)

    如何利用express新建项目(上) 摘要 这篇文章将讲解了如何快速利用express新建项目 一.express4.x的安装 1. npm install -g express 2. npm ins ...

  9. 自定义滚动条Js简版

    <!DOCTYPE html><html><head><meta charset="UTF-8"><title>自定义滚 ...

  10. 无线网络中,使用MDK3把指定的用户或者热点踢到掉线

    准备 1:系统环境为ubuntu16.04, 2:需要mdk3, mdk3这个软件需要通过apt安装, 需要kali系统的源 3:需要安装aircrack-ng套件 今天这套东西,可以在未连接上靶机网 ...