2016-05-26 9 views
2
if($ping) 
    { 
     ($mac | ? { $_ -match $ip }) -match "([0-9A-F]{2}([:-][0-9A-F]{2}){5})" | out-null; 
     if ($matches) { 
      Select-String -Pattern '[0-9A-F]{2}-[0-9A-F]{2}-[0-9A-F]{2}' -Path $matches[0] | 
      ForEach-Object {$_.Matches[0].Value} 
     } else { 
      "Not Found" 
     } 
    } 

私が現在使っているものです。私がPowerShellでこれを正しく実行しているかどうかはわかりません。powershellを使用してMACの最初の3オクテットを抽出して印刷する

私はMACの最初の3つのXX:XX:XXを抽出して、比較のために使用しようとしています。私はどのように試合後に引っ張っているか分からない。

あなたが最初の8つの文字をトリミングする Removeを使用することができます
+0

をこのコードはAです混乱..どの部分は動作していないのですか?何が起こっていますか? [mcve]を入力してください。 – briantist

答えて

2

$mac ='00:0a:95:9d:68:16' 

$mac.Remove(8, ($mac.Length -8)) 

は出力:

00:0a:95 

ます。また、それは正規表現を使用して行うことができます。

[regex]::Match($mac, '^(.{8})').Groups[1].Value 
関連する問題