2.Using Windows PowerShell Cmdlets and 3.Leveraging PowerShell Providers

PS C:/> get-alias dir
PS C:/> get-childitem C:/
get-childitem |format-list
get-childitem C:/ | format-list -property name
get-childitem C:/ | format-list -property name, length
get-childitem C:/ | format-wide
get-childitem C:/Windows
get-childitem C:/Windows -recurse -include *.txt
get-childitem C:/Windows -recurse -include *.txt |format-wide -column 3
get-childitem C:/Windows -recurse -include *.txt |format-wide -property
name -groupby length -column 3
get-childitem C:/ | format-table
get-childitem C:/Windows
get-childitem C:/Windows -recurse -include *.txt
get-childitem C:/Windows -recurse -include *.txt |format-tableget-childitem C:/Windows -recurse -include *.txt |format-table -property
name, length, lastwritetime

get-command *
get-alias g*
gcm get-command
gcm get-command |format-list *
gcm get-command | format-list -property definition
(gcm get-command).definition
gcm -verb se*
gcm -noun o*
gcm -syntax get-command
gcm -syntax gcm
Get-Command
get-childitem C:/ | get-member
get-alias g*
gal g*
gal g* |sort-object -property definition
gci | gm
get-childitem | get-member -membertype property
get-childitem | get-member -membertype method
get-childitem | get-member -membertype m*
$wshShell = new-object -comobject "wscript.shell"
$wshShell.run("calc.exe")
$wshShell.ExpandEnvironmentStrings("%windir%")
test-path $profile
new-item -path $profile -itemtype file -force
notepad $profile
Set-alias gh get-help
function pro {notepad $profile}
gal | where-object {$_.definition -match "get-childitem"}
gci
gci | where-object {$_.length -gt 1000}
cls
gal cls
gal mred
clear-host
get-childitem | get-member -membertype property
get-childitem | where-object {$_.LastWriteTime}
get-childitem | where-object {$_.LastWriteTime -gt "12/25/2006"}
get-childitem "C:/fso"| where-object {$_.LastWriteTime -gt "12/25/2006"}
get-childitem -recurse "C:/fso"| where-object {$_.LastWriteTime -gt "12/25/2006" }
$wshnetwork = new-object -comobject "wscript.network"
$wshnetwork.EnumPrinterConnections()
$wshnetwork.EnumNetworkDrives()
$colPrinters = $wshnetwork.EnumPrinterConnections()
$colDrives = $wshnetwork.EnumNetworkDrives()
$userName = $wshnetwork.UserName
$userDomain = $wshnetwork.UserDomain
$computerName = $wshnetwork.ComputerName
$wshShell = new-object -comobject "wscript.shell"
$wshShell.Popup($userDomain+"/$userName $computerName")
$wshShell.Popup($colPrinters)
$wshShell.Popup($colDrives)

3.##################################################################################################Leveraging PowerShell Providers
Get-PSProvider
sl alias:/
GCI
GCI | Where-Object {$_.name -like "s*"}
Get-ChildItem |Get-Member
GCI | Where-Object {$_.definition -like "set*"}
GCI | Where-Object {$_.name -like "*w*"}
GCI | where {$_.name -like "*w*"}
Set-Location cert:/
Get-ChildItem
Get-ChildItem -recurse
GCI -path currentUser
sl currentuser/authroot
GCI | where {$_.subject -like "*c&w*"}
GCI | where {$_.subject -like "*SGC Root*"}
GCI | where {$_.thumbprint -eq "F88015D3F98479E1DA553D24FD42BA3F43886AEF"}
GCI | where {$_.thumbprint -eq "F88015D3F98479E1DA553D24FD42BA3F43886AEF"} |Format-List *
Certmgr.msc
Invoke-Item cert:/
Get-PSDrive
Set-Location env:/
Get-Item *
get-item * | Sort-Object  -property name
get-item windir
get-item windir | Format-List *
GI * | Sort -Property Name
New-Item -Path . -Name admin -Value mred
Get-Item admin
Get-Item admin | Format-List *
GCI | Sort -Property name
New-Item -Path . -Name admin -Value mred
Rename-Item -Path env:admin -NewName super
GCI | Sort -Property name
New-Item -Path . -Name super -Value mred
Remove-Item super
GCI C:/
GCI C:/ | where {$_.psiscontainer}
GCI C:/ | where {!$_.psiscontainer}
GCI  -Path C:/ | GM
GCI  -Path C:/ | GM | Where {$_.membertype -eq "property"}
GCI  -Path C:/ | GM | where {$_.membertype -eq "property" -AND $_.typename -like "*file*"}
GI * | Where {$_.PsisContainer -AND $_.name -Like "*my*"}
RI mytest -recurse
GI * | Where {$_.PsisContainer -AND $_.name -Like "*my*"}
New-Item -Path C:/ -Name mytest -Type directory
New-Item -Path C:/mytest -Name myfile.txt -type file
RI -Path C:/mytest/myfile.txt
New-Item -Path C:/mytest -Name myfile.txt -Type file -Value "My file"
Get-Content C:/mytest/myfile.txt
Add-Content C:/mytest/myfile.txt -Value "ADDITIONAL INFORMATION"
Get-Content C:/mytest/myfile.txt
Set-Content C:/mytest/myfile.txt -Value "Setting information"
Get-Content C:/mytest/myfile.txt
Set-Location function:/
GCI
GCI | Where {$_.definition -like "set*"}
GCI | Where {$_.definition -notlike "set*"}
Get-Content md
get-psDrive | where {$_.Provider -like "*Registry*"}
GCI -path HKLM:/software
GCI -Path 'HKLM:/SOFTWARE/Microsoft/Windows NT/CurrentVersion/HotFix'
GCI -Path 'HKLM:/SOFTWARE/Microsoft/Windows NT/CurrentVersion/HotFix' | where {$_.Name -like "*KB928388"}

Get-Help *variable | Where-Object {$_.category -eq "cmdlet"}
Get-Help *variable | Where-Object {$_.category -eq "cmdlet"} | Format-List name, category, synopsis
SL variable:/
Get-ChildItem
Get-ChildItem | Sort {$_.Name}
Get-Variable ShellId
Get-Variable ShellId | Format-List *
New-Variable administrator
Get-Variable administrator
Set-Variable administrator -value mred
Get-Variable administrator
Remove-Variable administrator
Get-Variable administrator
Get-ChildItem |Get-Member | Where-Object {$_.membertype -eq "property"}
Get-PSDrive |where {$_.name -like "c*"}
Sl cert:/
GCI
GCI -recurse
GCI -recurse >C:/a.txt;notepad.exe a.txt
new-PSDrive -name al -PSProvider alias -Root.
SL al:/
GCI | Sort -Property name
GCI | sort -Property name | Where {$_.Name -gt "t"}c
SL C:/
Remove-PSDrive al
Get-PSDrive
Get-Item -Path env:/
Get-Item -Path env:/ | Get-Member
$objEnv=Get-Item -Path env:/
$objEnv.Count
$objEnv.Get_count
$objEnv.Get_count()
$objEnv.GetType()

时间: 2024-11-01 22:55:21

2.Using Windows PowerShell Cmdlets and 3.Leveraging PowerShell Providers的相关文章

PowerShell 5.0和跨平台PowerShell支持class类编程

PowerShell 5.0和跨平台PowerShell支持class类编程 PowerShell 5.0支持class类编程,具体查看:https://technet.microsoft.com/en-us/library/dn820211.aspx 这里给个最简单的例子: class A{ [string]$name A([string]$name){$this.name=$name} } $a=[A]::new("test") $a.name 另外,微软这两年做的跨平台Power

Windows 10下,如何使用PowerShell批量重启局域网电脑

PowerShell 在Windows 10中越来越受到微软重视,甚至被微软安排在开始按钮超级菜单中替换了一直以来默认的命令提示符(当然还可以换回去),这和该工具越来越强大密不可分.这次就介绍一个"群重启"命令,可让局域网内的电脑集体重启. 1.单机重启 这个功能比较简单,命令也容易,只不过重启还得用命令就显得有点麻烦: Restart-Computer  提示1:这个命令执行后,系统会立刻重启,所以如果电脑没准备好,小心手滑. 2.集体重启 如果是让两台以上电脑重启,采用这个方式就比

Windows 10 最新更新破坏了 PowerShell 功能

Windows 10最新更新KB 3176934被发现破坏了PowerShell的状态配置功能.微软的Windows PowerShell 官方博客确认了这一消息. 微软称构建包丢失了一个 .MOF文件,破坏了状态配置,所有状态配置操作都会返回无效属性错误.微软给出的解决方法是:卸载该补丁,或者是等待即将在8月30日释出的补丁修复该 补丁导致的问题.Windows 10的更新最近被曝出了一连串的问题. 文章转载自 开源中国社区[http://www.oschina.net]

【探索PowerShell 】【三】PowerShell下使用Aliases

不知道各位有没有接触过linux,我才疏学浅,对alias的认识是从linux上来的.Linux常 用的Bash命令也是有上百个,虽然一般情况下命令都非常简短,不过很多时候需要大量的却 是大量的参数,这样,对很多初学者来说,背命令变成为最头疼的事情,也使得很多Linux初 学者望而生畏.因此,在linux下,很常用的就是alias,也就是别名.当然,PowerShell很 好的借鉴了这一点. 这一节就来介绍PowerShell下的Aliases. 在PowerShell中,为了习惯于使用,可以使

【探索PowerShell 】【五】PowerShell基础知识

在PowerShell中,我们可以轻松的与数据.对象进行交互,为了简化我们访问外部数据, PowerShell允许我们像操作驱动器.文件一样对数据.对象等进行操作. 使用这条命令,查看我们已有的Providers: get-psprovider 实际上,每一个Provider就是一个动态链接库(.dll),在PowerShell中也可以被称之为 "管理单元",在管理单元中,有详细的代码实现我们的各种操作.PowerShell甚至允许我 们自己编写Provider:http://msdn

【探索PowerShell 】【四】PowerShell的对象、格式与参数

PowerShell中的对象 在本教程开篇我们说过,PowerShell是基于面向对象化的,不像传统的shell那样基于文 本.这其中最主要的原因就是因为Win平台在管理操作上主要以面向对象为主,因此为了符合 系统特点和我们的操作习惯,PowerShell也继承了这一特色.因此,不像传统的shell,在 PowerShell中,我们可以随意地与对象进行互动, 先来认识一下,什么是对象--object 不知各位有没有从事开发的经验.实际上,面向对象这一概念的提出就是为了更好用程序 语言解决现实问题

如何运行PowerShell脚本

  新版本的PowerShell随着Windows Server 2012 R2到来.现在,使用PowerShell 4.0的唯一途径就是获取并使用Windows Management Framework 4.0. PowerShell在Windows虚拟化任务方面能发挥最大帮助和用途.现在网上有关于此话题的资料库,最热的是TechNet博客中的一个五部分的系列文章.通过这些信息,你可以找到大量有关PowerShell脚本自动化多虚拟化设置.配置和维护任务的相关细节. TechNet系列文章提供

测试运行: 使用Windows PowerShell实现UI自动化

尽管问世时间相对较短,但 Windows PowerShellTM 已经成为我最喜爱的工具之一.我最近发现,Windows PowerShell 拥有创建小型库所需的全部功能,您可以使用这些功能编写超轻型的 UI 自动化代码. 在本月的专栏中,我将介绍如何创建一个小型的自定义 Windows PowerShell cmdlet 集合,以执行 Windows UI 自动化任务.其中包括获得应用程序和控件的句柄.操作控件以及检查应用程序状态.在本次讨论中,我将假设您对 Windows PowerSh

Windows PowerShell 工具

如果尚未开始使用 Windows PowerShell,很可能您很快就会用到它.Windows PowerShell 将成为 Windows Server 领域的核心管理工具.对于初学者,它已成为 Exchange Server 2007 基于脚本管理的基础. 为以原有格式充分利用 Windows PowerShell,您需要记住大量语法.cmdlet 和通用结构, 有个工具可以用来查看PowerShell cmdlets的帮助信息 下载地址: http://www.primaltools.co