← Back to Home

PowerShell Remotingの導入:他のマシンに接続する

Views: 921

You can try the commands on our interactive shell.

PowerShell Remotingの導入:他のマシンに接続する

============================================================

PowerShell remotingは、ローカル PowerShell セッションから遠隔マシンを管理するために使用するパワフルな機能です。このチュートリアルでは、PowerShell remotingの基本的な概念と自動化タスクを実行する方法について学びます。

What is PowerShell Remoting?

PowerShell remotingは、ローカルマシンと一つ以上の遠隔マシンとの間で安全で Bidirectional チャネルを確立します。これにより、ローカル PowerShell セッションからコマンド、スクリプト、およびリソースを実行したり管理することができます。

Prerequisites

PowerShell remoting を使用する前に、以下の条件を満たす必要があります:

Remoting を有効にする

ローカルマシンに remoting を有効にするには、以下のコマンドを実行します:

Enable-PSRemoting -Force

このコマンドにより、PowerShell remoting インフラストラクチャーがローカルマシンに構成されます。

遠隔マシンに接続する

遠隔マシンに remoting を使用して接続するには、Invoke-Command cmdlet を使用します。例えば:

Invoke-Command -ComputerName <remote_machine_name> -ScriptBlock { Get-Process }

<remote_machine_name> に遠隔マシンの名前を置き換えてください。

この例では、遠隔マシン上で Get-Process cmdlet を実行しています。ローカル PowerShell セッションから任意の PowerShell cmdlet またはスクリプトを実行したり管理することができます。

遠隔マシン上でスクリプトを実行する

遠隔マシン上で PowerShell スクリプトを実行するには、Invoke-Command cmdlet を使用します。例えば:

Invoke-Command -ComputerName <remote_machine_name> -ScriptBlock { .\my_script.ps1 }

<remote_machine_name> に遠隔マシンの名前を置き換えてください。また、.\<my_script.ps1> は PowerShell スクリプトのパスに置き換えます。

Remoting をループで使用する

時々、複数のマシンに対してコマンドレットやスクリプトを実行する必要があります。remoting をループで使用するには、例えば:

$machines = @("machine1", "machine2", "machine3")

foreach ($machine in $machines) {
    Invoke-Command -ComputerName $machine -ScriptBlock { Get-Process }
}

この例では、マシンの名前の配列をループで繰り返し、各マシンに対して Get-Process cmdlet を実行しています。

Tips and Tricks

PowerShell remoting を使用する際に注意するべき点:

Conclusion

PowerShell remoting は、ローカル PowerShell セッションから遠隔マシンを管理するためのパワフルな機能です。このチュートリアルで学んだ概念を基盤に、日常の仕事で remoting を使用することを期待します。Happy scripting!

Try it Now!