VSCodeをWindowsで使う場合、ターミナルでPowerShellを使うことが多いです。
ただ、普段Linuxやcmdを使っていると、PowerShell独特の書き方で混乱しやすいです。
特に、次のことは毎回忘れやすいポイントです。
この記事では、VSCodeでPowerShellを使うときに最低限覚えておきたい操作をまとめます。
PowerShellとは
PowerShellはWindows標準のシェルです。
VSCodeではデフォルトターミナルとして使われることが多く、PythonやNode.js開発でもよく利用します。
cmdとの違い
PowerShellはWindowsのコマンドプロンプト(cmd)とは別物です。
cmdの感覚で操作すると、動かないコマンドがあります。
例えば、環境変数の設定方法が違います。
cmdでは以下を使います。
set PATH=C:\testしかし、PowerShellでは動きません。
PowerShellでは以下のように書きます。
$env:PATH = "C:\test"cmdとPowerShellは似ていますが、別物として考えたほうが分かりやすいです。
VSCodeでPowerShellを使う理由
VSCodeではPowerShellをデフォルトで使用するように設定されています。
次のことで使用することが多いです。
- Python
- Node.js
- npm
- uv
- Git
Windows環境では避けて通れないため、基本操作だけ覚えておくと便利です。
PowerShellの基本コマンド
PowerShellはLinux風のコマンドが使えます。
Linux経験者なら比較的入りやすいです。
現在のフォルダを確認する
現在の場所は pwd で確認できます。
pwdフォルダ移動とファイル一覧表示
フォルダ移動は cd を使います。
cd C:/workファイル一覧は ls を使います。
lsファイルのコピー・移動・削除
コピーは cp です。
cp test.txt backup.txt移動は mv です。
mv test.txt old.txt削除は rm を使います。
rm old.txtPowerShellでよくハマるポイント
PowerShellは細かい部分でLinuxやcmdと違います。
ここを覚えるだけでもかなり楽になります。
パス区切りは「\」だけではない
Windowsでは通常 \ を使います。
C:\work\pythonただし、PowerShellでは / も使えます。
cd C:/work/python個人的には / を使ったほうが入力しやすくおすすめです。
コマンドを改行するときはバッククォートを使う
PowerShellでは、コマンドを複数行に分ける場合にバッククォートを使います。
python script.py `
--input test.csv `
--output out.csvここで重要なのは、バックスラッシュ \ ではないことです。
使うのはバッククォート ` です。
かなり間違えやすいポイントです。
カレントフォルダの実行は「.\」を使う
PowerShellでは、現在のフォルダにあるスクリプトを実行するときに .\ を付けます。
.\test.ps1Linuxでいう ./ に近いイメージです。
PowerShellの環境変数の使い方
PowerShellでは環境変数の扱いが独特です。
ここを理解すると、PythonやNode.js環境構築で困りにくくなります。
cmdのsetコマンドとの違い
cmdでは set を使います。
set PATH=C:\toolしかし、PowerShellでは以下を使います。
$env:PATH = "C:\tool"PowerShellでは $env: が付くことを覚えておくと分かりやすいです。
環境変数を確認する
環境変数は以下で確認できます。
echo $env:PATHPATHを追加する
PATHへ追加する場合は += を使います。
$env:PATH += ";C:\tool"PythonやNode.jsツールを使うときによく使います。
環境変数を削除する
一時的に設定した環境変数を削除したい場合があります。
PowerShellでは以下を使います。
Remove-Item Env:\TEST_ENV例えば、TEST_ENV という環境変数を削除できます。
PATHを削除したい場合は、一部だけを取り除く方法が一般的です。
例えば、追加した C:\tool を削除する場合は以下のようにします。
$env:PATH = ($env:PATH -split ';' | Where-Object { $_ -ne 'C:\tool' }) -join ';'環境変数を変更すると、ターミナルを開き直さないと反映されない場合があります。
特にPythonやNode.jsの環境構築では、
「追加したのに反映されない」
「削除したのに残っている」
ということがあるため、ターミナル再起動も覚えておくと便利です。
VSCodeでよく使うPowerShell操作
VSCodeでは開発系コマンドを実行することが多いです。
よく使うものだけ覚えておけば十分です。
Python仮想環境を有効化する
Pythonでは仮想環境をよく使います。
.\venv\Scripts\activatenpmコマンドを実行する
Node.jsではnpmを使います。
npm install
npm run devuvコマンドを実行する
最近はuvを使うことも増えています。
uv run main.pyPowerShellでよくあるエラー
PowerShellはエラー原因が分かると対処しやすいです。
最初に覚えておくと時間を無駄にしません。
スクリプトを実行できません
以下のようなエラーが出ることがあります。
このシステムではスクリプトの実行が無効になっていますこれは実行ポリシーが原因です。
以下で許可できます。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUserコマンドが見つかりません
以下のようなエラーです。
コマンドが認識されませんこれはPATH設定が不足している場合が多いです。
環境変数PATHを確認しましょう。
setコマンドが動かない
cmdの感覚で set を使うと混乱します。
PowerShellでは $env: を使います。
cmdとPowerShellを別物として考えると理解しやすいです。
まとめ
PowerShellは最初は少し分かりにくいです。
ただ、毎日使うコマンドは限られています。
特に覚えておきたいのは以下です。
- $env:PATH
- バッククォート `
- .\script.ps1
この3つを覚えるだけでも、VSCodeでかなり困りにくくなります。
全部を暗記する必要はありません。
必要になったときに調べながら使えば十分です。
最後まで読んでいただき、ありがとうございました。