今天有群友问:
KOC 22:16:17
$ccc =get-process 这个是把所有结果保持在一个变量里。
我想实现。一项一个变量。
将结果自动保存到数组集合中,是PowerShell的优势,但是到了这个大哥这里,竟然行不通了。他想实现一项一个变量,这是一个不合理的要求。但是如果他是客户,客户即上帝,你得变着法去满足他呀!引出此题“PowerShell动态定义变量”,顺便推广下PowerShell命令New-Variable和虚拟驱动器variable。
比如我想把Get-Process的返回结果保存在$pro_1,$pro_2这样的变量中:
PS> $i=1 PS> Get-Process | foreach { New-Variable -Name "pro_$i" -Value $_ ;$i++ }
查看变量的$pro_2,是支付宝进程:
PS> $pro_2 Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 385 20 4752 6328 85 1992 AlipaySecSvc
比如我想将所有service保存到$sevice_serviceName这样的变量中:
PS> Get-Service | foreach { New-Variable -Name "service_$($_.Name)" -Value $_ }
怎样查看刚才定义的service系列变量:
PS> ls variable:service_* Name Value ---- ----- service_AdobeARMservice AdobeARMservice service_AeLookupSvc AeLookupSvc service_ALG ALG service_AlipaySecSvc AlipaySecSvc service_AppHostSvc AppHostSvc service_AppIDSvc AppIDSvc service_Appinfo Appinfo service_AppMgmt AppMgmt service_AppReadiness AppReadiness service_AppXSvc AppXSvc service_aspnet_state aspnet_state service_AudioEndpointBuilder AudioEndpointBuilder service_Audiosrv Audiosrv service_avast! Antivirus avast! Antivirus ……
本文链接: https://www.pstips.net/define-variable-dynamically.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
不错!