Powershell ホスト名からIPアドレス(IPv4,IPv6)をタブ区切りで出力させ、コンソールの結果からExcelに簡単に貼り付けらえるようにしたサンプル

EXCEL

.netFrameworkの GetHostAddresses を使えば ホスト名からIPアドレスを取得することができるが、対象ホスト名に対して複数のIPアドレスやIPv4,IPv6アドレスが含まれるがことがある。

こういった情報を一覧(Excel)で取得したいが、わざわざファイル出力させることも面倒なのでタブ区切りで出力させるようにしたサンプル

サンプルコード

$TargetHostName = "www.google.com"
$AddressList = [System.Net.Dns]::GetHostAddresses($TargetHostName) 

#hedder infomation
Write-Output "AddressFamily`tIPAddressToString" 

foreach ($Address in $AddressList) {
     Write-Output "$($Address.AddressFamily)`t$($Address.IPAddressToString)" 
}

・”`t”を使うことで、タブを出力させることができる。

・見出し行(ヘッダ)出力にはいろいろなテクニックがありそうだが、今回は AddressFamily や PAddressToString といった項目名を1行目にベタ打ちするようにした。

結果

項目間がタブ区切りのため、コンソールに出力された結果をそのままExcelに張り付けられる。

AddressFamily	IPAddressToString
InterNetworkV6	2404:6800:4004:801::2004
InterNetwork	172.217.161.68
ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました