なぜ VBS を PS1 に変換するのですか?
Microsoft は VBScript を非推奨にしました。Windows 11 24H2 ではオプション機能となり、Microsoft は 2027 年頃にデフォルトでの有効化を停止し、その後完全に削除する計画です。PowerShell は Windows に標準搭載されており、Windows 自動化の公式な後継です。今後も動作させる必要がある .vbs スクリプトは、今すぐ .ps1 に書き換えるべきです。
VBS から PS1 への変換方法
Visual Studio Code FREE
.vbs と新しい .ps1 ファイルを分割表示で開きます。VS Code は両方の言語のシンタックスハイライトを提供するため、並行しての書き換えがスムーズに行えます。
Notepad++ FREE
Notepad++ のマルチウィンドウ表示で .vbs と新しい .ps1 を並べて開き、各セクションを手動で移植します。Notepad++ には VBScript と PowerShell 両方のシンタックスハイライトが組み込まれています。
これらの形式について
VBSファイルはVBScriptです。これは、Windowsが内蔵のWindows Script…
.VBS の詳細を開く →PS1ファイルは Windows PowerShell スクリプトです。これは Windows、macOS、または Linux 上でタスクを自動化するコマンドが含まれたプレーンテキストファイルです。Windows では、ファイルを右クリックして «PowerShell で実行» を選択します。Windows…
.PS1 の詳細を開く →品質と注意点
- 一般的なマッピング:
CreateObject(«Scripting.FileSystemObject»)はGet-ItemやCopy-Itemなどの組み込みコマンドレットに置き換わります。WScript.EchoはWrite-Outputに、For Eachループは更新された構文のforeachループになります。 - 初回実行時に実行ポリシーによって
.ps1がブロックされる場合は、PowerShell でSet-ExecutionPolicy RemoteSigned -Scope CurrentUserを使用してください。 - 専用の VBS-to-PS1 変換ツールは存在しません。AI アシスタントは短いスクリプトであれば PowerShell 版の下書きを作成できますが、出力には常にレビューとテストが必要です。
よくある質問
自動の VBS-to-PowerShell 変換ツールはありますか?
なぜ単に `.vbs` ファイルを使い続けないのですか?
.vbs スクリプトは実行できなくなります。COM オブジェクトの呼び出しは PowerShell に変換できますか?
New-Object -ComObject をサポートしているため、WScript.Shell への呼び出しは多くの場合 New-Object -ComObject WScript.Shell に置き換えることができます。