Visual Studio Code を使用したリモート編集およびデバッグ
ISE に精通していれば、統合コンソールから psedit file.ps1
を実行してファイル (ローカルまたはリモート) を ISE で開けることをご存じではないでしょうか。
この機能は、VSCode 用の PowerShell 拡張機能でも使用できます。 このガイドではそれを行う方法を説明します。
前提条件
このガイドでは、次のことを前提としています。
- アクセスできるリモート リソース (例: VM、コンテナー)
- その上で実行する PowerShell およびホスト マシン
- VSCode および VSCode 用 PowerShell 拡張機能
この機能は、PowerShell と Windows PowerShell で動作します。
また、この機能は、WinRM、PowerShell Direct、または SSH でリモート マシンに接続しているときにも動作します。 SSH を使用したいが、Windows を使用している場合は、SSH の Win32 バージョンを確認してください。
重要
Open-EditorFile
および psedit
コマンドは、VSCode 用の PowerShell 拡張機能によって作成された PowerShell 統合コンソールでのみ機能します。
使用例
これらの例は、MacBook Pro から Azure で実行されている Ubuntu VM に対するリモート編集およびデバッグを示しています。 プロセスは Windows 上と同じです。
Open-EditorFile でのローカル ファイル編集
VSCode 用 PowerShell 拡張機能を開始し、PowerShell 統合コンソールを開くと、「Open-EditorFile foo.ps1
」または「psedit foo.ps1
」と入力してエディターでローカル環境の foo.ps1 ファイルを開くことができます。
注意
ファイル foo.ps1
は既に存在している必要があります。
そこから次のことができます。
余白にブレークポイントを追加します
F5 キーを押して PowerShell スクリプトをデバッグします。
デバッグ中に、デバッグ コンソールと対話し、左側でスコープ内の変数を確認し、他のすべての標準デバッグ ツールを使用できます。
Open-EditorFile でのリモート ファイル編集
次に、リモート ファイルを編集してデバッグします。 手順はほぼ同じですが、最初に行う必要があることが 1 つだけあります。リモート サーバーへの PowerShell セッションに入ります。
それを行うためのコマンドレットがあります。 Enter-PSSession
です。
要約すると、次のようになります。
Enter-PSSession -ComputerName foo
は WinRM でセッションを開始しますEnter-PSSession -ContainerId foo
とEnter-PSSession -VmId foo
は PowerShell Direct でセッションを開始しますEnter-PSSession -HostName foo
は SSH でセッションを開始します
詳細については、Enter-PSSession のドキュメントを参照してください。
Azure の Ubuntu VM へのリモート処理を行っているので、SSH を使っています。
まず、統合コンソールで Enter-PSSession
を実行します。 プロンプトの左側に [<hostname>]
が表示されたら、リモート セッションに接続しています。
これで、ローカル スクリプトを編集する場合と同じ手順を実行できるようになりました。
Open-EditorFile test.ps1
またはpsedit test.ps1
を実行してリモートのtest.ps1
ファイルを開きますファイルを編集し、ブレークポイントを設定します
リモート ファイルのデバッグを開始します (F5)
何か問題があれば、GitHub リポジトリで問題を開いてください。
PowerShell