首页 > 代码库 > PowerShell 学习笔记5

PowerShell 学习笔记5

可重用的远程管理会话:

TCP Joke:

795bf814gw1ehruntnzbbj20p20f2789.jpg

ICM进行的会话在结束之后,会话在目标计算机上进行的会话就全部销毁了。

建立Session与查看Session

       $Session = New-PSSession –computerName dc

       Get-PSSession

       icm –session $sessions {$var =2}

这个$Session可以被重用(Powershell V3)

测试脚本执行时间:

Measure-Command { scriptblock}

重用Session的脚本块执行时间更短

隐式的远程操作:

$s=New-PSSession –computer dc

invoke-command –Session $s {import-module activedirectory}

Import-PSSession –Session $s –Module ActiveDirectory –Prefix rem

这样你在本地可以通过加了rem前缀的命令来执行dc上的AD模块

(从DC提取命令)

image

使用参数提取所有命令,然后在本地计算机上执行。(动态生成的命令)

image

image

同时运行两组不同版本(凭据)产品的PS(exchange2007与exchange2010)

ISE:

启动速度明明超慢的……

语法高亮、代码补全

get-CimInstance Win32_Logical(ctrl+空格)

定义对象(前述过)

定义脚本的参数:

image

定义参数属性:

[CmdletBinding]使自定义脚本可以使用 参数属性

[Parameter(Mandatory=$true)]影响接下来的一个参数,使其变成必要参数

image

注释 - 帮助文档:

自动转换成帮助信息。

image

image

ISE提供的代码片段 Ctrl+J

定义命令 使用function括上刚刚的脚本,使其成为一个命令

function get-diskinfo{   #@$@!^%^%#  }

. .\diskinfo.ps1  在脚本前加上一个点 意味着将脚本的内容(结果)保留在目前的内存中,而非在脚本运行完之后就销毁他

存为module…… 扩展名改成psm1

image

动态加载模块:

image

学习资源:

PStips.org

powershell.org

本文出自 “卡斯特梅的雨季” 博客,请务必保留此出处http://sodaxu.blog.51cto.com/8850288/1431911