PowerShell-自定义函数(四)-位置参数:Position

这一篇我们来讲一下位置参数.什么是位置参数呢?直白点说就是只要你按照一定的顺序输入值,而不需要特别去把参数写出来.

例如我们用的Get-Service BITS 就直接可以获取到BITS服务的信息,而完整的写法应该是:Get-Service -Name BITS .这种效果我们就可以使用位置参数来做到.

因为Get-Service的第1位置参数是-Name,所以我们把-Name省略掉,直接填写服务名BITS也能正确的运行.

使用位置参数可以减少我们重复输入参数名的代码输入量,加快我们操作的速度.

目标

1.输入姓名和年龄后,直接在显示 某某 今年 多少 岁 .

2.强制使用Name参数.

3.指定Name为第1位置参数,Age为第2位置参数.

示例:

Function Test-Function {
    Param      
   (       
   [parameter(
    Mandatory = $true,
    Position = 0
    )]
    $Name,
   [parameter(
   Position = 1
   )]
    $Age = "18"
    )
    
    Write-Host "$Name 今年 $Age 岁." 
}

说明:

与上篇文章中相比,我们将Name的位置指定为第1个,给Age参数也加上了位置参数并指定为第2个.这里注意一下是顺序是从0开始.0代表第1个,1代表第二个,依此类推.

运行结果:

可以看到我并没有指定彪锅和20分别由哪个参数来接受,但PowerShell根据位置参数正确的将他们赋予至我们希望的参数之中.

但还有一个问题,也许我刚刚写的时候我还能够记得,Name是第1个参数,Age是第2个参数.但过一段时间以后,不至于要去翻代码看才知道吧?那太麻烦了.

这个时候就可以祭出Get-Help这个大杀器了.PowerShell会自动的帮我们生成一些简单的帮助信息,如下:

图中我们可以看到在参数的帮助信息中,PowerShell为我们列出了第个参数的位置信息.Name位置是0代表是第1个参数.Age位置是1代码是第2个参数.上一篇所讲的的强制参数在这里也有显示.

至于其他的参数设置,后续会继续为大家进行说明.(如果我能坚持写完这个系列不烂尾的话...)

好了,下一篇会为大家更新一个重要的功能:如何让Function支持从管道"|"接受数据并进行处理.

时间: 2024-10-12 16:34:52

PowerShell-自定义函数(四)-位置参数:Position的相关文章

第二十四节,自定义函数

第二十四节,自定义函数函数是将要实现的功能写在函数里,在要使用此功能的地方调用此函数即可实现功能,这样大大减少编程重复书写同样的代码,在多个要使用同样功能的地方调用函数即可不需要重复写同样的代码函数式编程最重要的是增强代码的重用性和可读性 函数的定义主要有如下要点: def:表示函数的关键字函数名:函数的名称,日后根据函数名调用函数函数体:函数中进行一系列的逻辑计算,如:发送邮件.计算出 [11,22,38,888,2]中的最大数等...参数:为函数体提供数据return:返回值:当函数执行完毕

四、smarty模板的自定义函数

smarty模板的自定义函数(这里介绍的是常用) 分为三个种类: 1.  变量调节器 2.  函数 3.  块函数 三个种类插件的用法: 1.  变量调解器的用法, <{$var|myfun:arg1:arg2}> 2.  函数的用法(和使用HTML标记很像) 如, <{myfun color=”red” size=”7” num=”7”}> 在PHP中定义的函数为: $smarty->registerPlugin(“function”,”myfun”,”one”); fun

python第十四课--排序及自定义函数之案例二:冒泡排序

案例二:冒泡排序 lt1=[45,12,56,-32,-3,44,75,-22,100] print('排序前:'+str(lt1)) 自定义函数:实现冒泡排序(升序)原则:1).有没有形参?有,接受一个列表对象 2).有没有返回值?没有,排完就排完 def bubbleSort(lt): length=len(lt) for i in range(length-1): for j in range(length-1-i): if lt[j]>lt[j+1]: lt[j],lt[j+1]=lt[

python第十四课--排序及自定义函数

1.排序 特点: 1).升序:从小到大 2).降序:从大到小 课堂实现选择排序:参看老郭选择排序.py文件 2.函数:(方法/method) 自定义函数: 概念:它表示一段作用范围(作用域),当中封装了一段业务逻辑代码,此范围有名字, 我们需要调用函数名,才能去执行它: 好处: 1).代码的复用性变强 2).代码的扩展性和维护性变好 3).代码的阅读性变好 函数有五要素: ①.函数修饰符:必须都是def开头 ②.函数返回值:函数执行完毕可能存在有返回值/没有返回值两种情况 ③.函数名:标识符(规

Microsoft SQL Server 自定义函数整理大全

01.去除字符串中的html标记及标记中的内容 [叶子函数分享一]去除字符串中的html标记及标记中的内容 --1.创建函数 create function [dbo].[clearhtml] (@maco varchar(8000)) returns varchar(8000) as begin     declare @i int     while 1 = 1     begin        set @i=len(@maco)        set @maco=replace(@maco

python的自定义函数(函数类型、def、range、rerun)

一.PyCharm基本设置 1.用Ctrl+鼠标滚轮--放大或缩小字体 搜索zoom 2.在Windows资源管理器打开文件或目录 搜索keymap 设置成不常用的键即可,如F3. 3.代码提示 搜索letter 二.自定义函数 1.为什么要使用函数 函数中的代码一次编写,多处运行;函数可以让代码复用,减少代码冗余. 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也

PHP移动互联网开发笔记(4)——自定义函数及数组

原文地址:http://www.php100.com/html/php/rumen/2014/0326/6705.html 一.自定义函数 自定义函数就是我们自己定义的函数,在PHP中自定义函数格式如下: function funname(arg1, arg2, arg3......){ //TODO return values; } view source print? 01.<?php  02.function fun($m, $n){  03.if($m==0 || $n==0){  04

java mysql自定义函数UDF之调用c函数

正如sqlite可以定义自定义函数,它是通过API定义c函数的,不像其他,如这里的mysql.sqlite提供原生接口就可以方便的调用其他语言的方法,同样的mysql也支持调用其它语言的方法. google "mysql call c function"发现一片文章 MySQL User Defined Functions  This tutorial explains what an User Defined Function (UDF) is, what it does and w

JavaWeb学习之JSTL自定义标签库的使用、JSTL自定义函数库(7)

一.自定义标签,步骤 * 确定需求 * <my:date /> 输出当前系统的时间 yyyy-MM-dd hh:mm:ss:SSS * 编写Java类 新建包名:com.yxl.tag,新建类MyDateTag,实现SimpleTag接口 * 只要与此接口有关的实现类,javax.servlet.jsp.tagext.JspTag * 需要实现具体的接口 * javax.servlet.jsp.tagext.SimpleTag,简单标签,JSP2.0**,选择这个 * javax.servle