powershell常用命令


powershell常用命令

1.PowerShell判斷數組里面是否包含指定字符串元素

$arrColors = "blue", "red", "green", "yellow", "white", "pink", "orange", "turquoise"

# 判斷數組是否包含指定元素

$arrColors -contains "black"

# 判斷數組是否包含指定元素(大小寫敏感)

$arrColors -ccontains "Green"

# 判斷數組是否不包含指定元素

$arrColors -notcontains "violet"

# 判斷數組是否不包含指定元素(大小寫敏感)

$arrColors -cnotcontains "Green"

2.PowerShell:連接與分隔字符串

一、連接字符串

  • 使用"+"連接字符串:將字符串連接在一起,字符串之間沒有分隔符。

$string1="abc" 

$string2="def"

$string3=$string1+$string2

$string3

  • "-Join"連接字符串:

語法:

-Join (String1,String2,String3...) 不使用分隔符連接字符串

String1,String2,String3… -Join "Delimiter" 使用分隔符連接字符串

例1:

$a=-Join("abc","def","ghi")

$a

例2:

$b="abc","def","ghi" -Join ":"

$b

  • 使用"*"運算符:字符串自連接

$string1="abc"

$string2=$string1*3

$string2

二、分隔字符串

語法:

-Split String 根據空格分隔字符串

String -Split "Delimiter" [,MaxSubStrings] 根據指定分隔符分隔字符串

例1:

$a="abc def ghi"

-Split $a

例2:

$a="abc:def:ghi"

$a -Split ":"

 3.PowerShell中的靈活的參數驗證功能

1)普通方式:

function  Get-Weekday
{
   param
   (
     $Weekday
   )
   
   "You chose $Weekday"
}
PS>  Get-Weekday  -Weekday  NoWeekday
You chose NoWeekday

2).正則表達式類型的驗證方式:

function  Get-Weekday
{
param
(
[ ValidatePattern ( 'Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday' )]
$Weekday
)
"You chose $Weekday"
}

 現在一旦用戶輸入的字符串與你指定的模式不匹配時,Powershell會拋出一個異常,但是這個異常信息不夠友好。在輸出參數時,控制台或着ISE編輯器也不能智能提示:

 3)使用ValidateSet:

function  Get-Weekday
{
param
(
[ ValidateSet ( 'Monday' 'Tuesday' 'Wednesday' 'Thursday' 'Friday' 'Saturday' 'Sunday' )]
$Weekday
)
"You chose $Weekday"
}
現在用戶在輸出參數時被限定在你規定的值集合中,另外在ISE中還會智能提示用戶允許的值列表。

 4.查看、執行服務命令

1)查看windows下的所有服務

Get-Service

或者

sc.exe query

2)查看運行中的服務

Get-Service |findstr "Running"

3)查看某個服務狀態

Get-Service -ServiceName Dhcp

或者

sc.exe query Dhcp

4)啟動某個服務

sc.exe start Dhcp

4)停止某個服務 

 sc.exe stop Dhcp

4.write-error、write-warning、$host.UI.WriteErrorLine('內容')、$host.UI.WriteErrorLine('內容')

如果你想在PowerShell控制台上輸出錯誤信息或者警告信息,可以分別使用write-error和write-warning這兩條命令。它們會采用系統中默認的字體顏色來打印文本。PowerShell會為你的輸出采用一個文本模板。

但是Write-Error會引入一個實際的異常,可能會中斷腳本的繼續運行。如果你只想輸出一個看起來像錯誤的消息,那不妨試試下面這種靠譜一點的寫法:

 5.文件或文件夾操作

1)刪除文件夾及其下所有文件

Remove-Item D:/uu898work/log -Force -Recurse

 2)復制文件

Copy-Item d:\ops\win\nssm.exe c:\windows\system32\

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM