PowerShell#
Getting Started#
バージョン#
PowerShell のバージョンを確認するには、次のコマンドを実行します。
$PSVersionTable
PowerShell のバージョンが5.1以下の場合、最新のバージョンにアップグレードすることをお勧めします。
Cmdlet について#
PowerShell は、cmdlet(コマンドレット)と呼ばれるコマンドを使用します。
コマンドレットは、
Verb-Noun
の形式で構成されます。例えば、Get-Process
は、プロセスの情報を取得するコマンドレットです。コマンドレットのパラメーターは、
-ParameterName
の形式で指定します。例えば、Get-Process -Name "chrome"
は、名前がchrome
のプロセスの情報を取得するコマンドです。コマンドレットのAlias(エイリアス)は、短縮形で使用できます。例えば、
Get-Process
は、gps
としても使用できます。PowerShell は、基本的に大文字と小文字を区別しません。
便利な操作#
Tab
キーを押すと、コマンドの補完ができます。Up Arrow
キーを押すと、前のコマンドを表示できます。Down Arrow
キーを押すと、次のコマンドを表示できます。Ctrl + C
キーを押すと、コマンドの実行を中止できます。
ヘルプ#
Name |
Alias |
Description |
Example |
---|---|---|---|
|
|
Get help |
|
ファイルシステム#
Name |
Alias |
Description |
Example |
---|---|---|---|
|
|
Change directory |
|
|
|
Print working directory |
|
|
|
List directory contents |
|
|
|
Create new item |
|
|
|
Rename item |
|
|
|
Copy item |
|
|
|
Move item |
|
|
|
Get item content |
|
|
|
Remove item |
|
Set-Location#
Set-Location
コマンドレットは、カレントディレクトリを変更します。
Set-Location C:\
Set-Location ..
コマンドを使用して、親ディレクトリに移動します。
Set-Location ..
Get-Location#
Get-Location
コマンドレットは、カレントディレクトリを取得します。
Get-Location
Get-ChildItem#
Get-ChildItem
コマンドレットは、指定されたディレクトリ内のファイルとサブディレクトリのリストを取得します。
Get-ChildItem
-Path
パラメーターを使用して、指定されたディレクトリ内のファイルとサブディレクトリのリストを取得します。
Get-ChildItem -Path C:\
-Recurse
パラメーターを使用すると、全てのサブディレクトリを再帰的に取得します。-Depth
パラメーターを使用して、再帰の深さを指定できます。ここでは、1 つのサブディレクトリまで取得します。
Get-ChildItem -Recurse -Depth 1
-Force
パラメーターを使用して、非表示の項目を含むすべての項目を取得します。
Get-ChildItem -Force
-Filter
パラメーターを使用して、指定されたフィルターに一致する項目のみを取得します。次の例では、拡張子が .txt
のファイルのみを取得します。
Get-ChildItem -Filter *.txt
New-Item#
New-Item
コマンドレットは、新しいファイル、ディレクトリを作成します。
以下の例は、現在のディレクトリにファイル test.txt
を作成します。
New-Item test.txt
-ItemType
パラメーターを使用して、新しい項目の種類を指定できます。File
はファイル、Directory
はディレクトリを指定します。
New-Item test -ItemType Directory
-Path
パラメーターを使用して、新しい項目の場所を指定できます。-Name
パラメーターを使用して、新しい項目の名前を指定できます。-Value
パラメーターを使用して、新しいファイルの内容を指定できます。
以下の例は、C:\test
ディレクトリにファイル test.txt
を作成し、内容を Hello, World!
とします。
New-Item -Path C:\test -Name test.txt -ItemType File -Value "Hello, World!"
Rename-Item#
Rename-Item
コマンドレットは、ファイルまたはディレクトリの名前を変更します。
以下の例は、test.txt
ファイルを newtest.txt
にリネームします。
Rename-Item -Path "C:\test\test.txt" -NewName "newtest.txt"
ここで、test.txt
ファイルが存在しない場合、次のエラーメッセージが表示されます。C:\test\test.txt
が存在しないため、リネームできません。
Rename-Item : Cannot rename because item at 'C:\test\test.txt' does not exist.
Copy-Item#
Copy-Item
コマンドレットは、ファイルまたはディレクトリを別の場所にコピーします。
以下の例は、test.txt
ファイルを C:\
ディレクトリにコピーします。
Copy-Item -Path "C:\test\test.txt" -Destination "C:\test2"
Move-Item#
Move-Item
コマンドレットは、ファイルまたはディレクトリを別の場所に移動します。
以下の例は、test.txt
ファイルを C:\test2
ディレクトリに移動します。
Move-Item -Path "C:\test\test.txt" -Destination "C:\test2"
Get-Content#
Get-Content
コマンドレットは、ファイルの内容を取得します。
以下の例は、test.txt
ファイルの内容を取得します。
Get-Content -Path C:\test\test.txt
Remove-Item#
Remove-Item
コマンドレットは、ファイルまたはディレクトリを削除します。
以下の例は、test.txt
ファイルを削除します。
Remove-Item -Path C:\test\test.txt
ネットワーク#
Name |
Description |
Example |
---|---|---|
|
Test network connection |
|
|
Test network connection |
|
|
Resolve DNS name |
|
|
Get IP configuration |
|
|
Get TCP connection |
|
|
Get network adapter |
|
Test-Connection#
Test-Connection
コマンドレットは、ICMP エコー要求パケット(Ping)を一つ以上のコンピューターに送信します。特定のコンピューターにIPネットワーク経由で接続できるかどうかを判断できます。
Test-Connection www.example.com
-Count
パラメーターを使用して、送信するエコー要求パケットの数を指定できます。
Test-Connection www.example.com -Count 4
-Quiet
パラメーターを使用して、テストの結果をbool値で返します。
Test-Connection www.example.com -Quiet
Test-NetConnection#
Test-NetConnection
コマンドレットは、ネットワーク接続の診断情報を提供します。
下記の例は、デフォルトのサーバーに対してPingテストを実行します。
Test-NetConnection
-Port
パラメーターを使用して、デフォルトのサーバーに対して特定のポートに接続テストを実行します。
Test-NetConnection -Port 80
-CommonTCPPort
パラメーターを使用して、デフォルトのサーバーに対して一般的なTCPポートに接続テストを実行します。
Test-NetConnection -CommonTCPPort HTTP
-ComputerName
パラメーターを使用して、remote computer に対してPingテストを実行します。
Test-NetConnection -ComputerName www.example.com
-TraceRoute
パラメーターを使用して、パケットがネットワーク上でどのように移動するかを示す情報を提供します。
Test-NetConnection -ComputerName www.example.com -TraceRoute
Resolve-DnsName#
Resolve-DnsName
コマンドレットは、名前解決を実行します。
以下の例は、www.example.com のIPアドレスを求めます。
Resolve-DnsName -name www.example.com
-Type
パラメーターを使用して、特定のDNSレコードタイプを指定できます。A
はIPv4 アドレスを指定、AAAA
はIPv6 アドレスを指定します。
Resolve-DnsName -name www.example.com -Type A
Get-NetIPConfiguration#
Get-NetIPConfiguration
コマンドレットは、ネットワークアダプターのIP設定情報を取得します。
Get-NetIPConfiguration
Get-NetTCPConnection#
Get-NetTCPConnection
コマンドレットは、TCP接続の情報を取得します。
Get-NetTCPConnection
-State
パラメーターをEstablished
に設定して、確立されたTCP接続の情報を取得します。
Get-NetTCPConnection -State Established
Get-NetAdapter#
Get-NetAdapter
コマンドレットは、ネットワークアダプターの情報を取得します。Get-NetAdapter
コマンドレットを使用して、ネットワークアダプターの名前、MACアドレス、LinkSpeed、状態などの情報を取得できます。
Get-NetAdapter