Windows CMD コマンドチートシート
古典的 Windows コマンド プロンプト(cmd.exe)を素早く参照:ファイル / ディレクトリ操作、テキスト検索、システム情報、ネットワーク、バッチ スクリプト — よく使うオプションと実用例をまとめました。
40 コマンド
移動 / ヘルプ
cd /d <path>作業ディレクトリを変更;/d はドライブ文字も切り替えます。
cd /d D:\projects\appdir [<path>]ファイルとサブディレクトリをサイズ、日付、属性付きで一覧表示。
/a 隠し / システムも表示; /s 再帰; /o 日付 / サイズ順; /b ベア形式; /w ワイド
dir /a /o:-d /b C:\logs<cmd> /?任意のコマンドの組み込みヘルプを表示(例:`robocopy /?`)。
xcopy /?tree [<path>]ドライブ / パスのフォルダ構造をグラフィカルに表示。
/F ファイルも含む; /A ASCII 文字を使用; /J Juniper 形式
tree C:\projects /F | moreファイル / ディレクトリ
md <dir> (or mkdir)ディレクトリを 1 つ以上作成します。
md C:\app\logs 2>nulrd <dir> (or rmdir)ディレクトリを 1 つ以上削除します。
/s ファイルとサブディレクトリも削除; /q 無音(確認なし)
rd /s /q C:\app\tmpdel <pattern>ファイルを 1 つ以上削除します。
/f 読み取り専用を強制; /s サブディレクトリも対象; /q 無音; /p 各ファイルで確認
del /s /q C:\app\logs\*.logcopy <src> <dest>ファイルを別の場所にコピーします。
/y 確認なしで上書き; /v 検証; /d 復号化先で; /b バイナリ
copy /y C:\src\config.json D:\app\config.jsonmove <src> <dest>ファイルを移動、またはファイル / ディレクトリをリネームします。
/y 上書き; /-y 確認
move /y C:\app\old.log D:\archive\ren <old> <new>ファイル / ディレクトリをリネーム(ファイル名のみ指定、フル パス不可)。
ren report.txt report-2026.txtxcopy <src> <dest>ファイル、ディレクトリ、サブディレクトリをコピー(レガシー;robocopy に置換)。
/s /e サブディレクトリ; /y 上書き; /i コピー先をディレクトリと仮定; /h 隠し / システム; /d 更新分のみ
xcopy /s /e /y /d C:\src D:\dstrobocopy <src> <dest>大規模ジョブ向けの堅牢なコピー;再試行、ログ、ミラーに対応。
/MIR ミラー; /MOV 移動(削除元); /E 空ディレクトリ含むサブディレクトリ; /Z 再開可能; /MT:n マルチスレッド; /LOG:<file>; /R:n 再試行; /W:n 待機
robocopy C:\src \\backup\daily /MIR /Z /MT:8 /LOG+:C:\logs\robocopy.txtattrib [+/-<attr>] <path>ファイル属性を変更:読み取り専用(R)、隠し(H)、システム(S)、アーカイブ(A)。
/s 再帰; /d フォルダも処理; +R -R で読み取り専用 ON / OFF
attrib +R +H secret\config.inimklink [[/D] | /H] <link> <target>ファイル / ディレクトリへのシンボリック(/D)/ ハード(/H)リンクを作成。
/D ディレクトリ シンボリック; /H ハード リンク; /J ディレクトリ ジャンクション
mklink /D C:\current C:\app\v2テキスト / 検索
type <file>テキスト ファイルの内容を画面に表示します。
type C:\app\config.json | moremore < file出力を 1 画面ずつページ送り(Unix の less に似た動作)。
type big.log | morefind "<str>" <files>ファイル内のリテラル文字列を検索(レガシー;正規表現なし)。
/i 大文字小文字無視; /v 否定; /n 行番号; /c 件数のみ
find /i /n "TODO" *.mdfindstr [/R] <pattern> <files>リテラル文字列 / 正規表現のテキスト検索;複数パターンに対応。
/R 正規表現; /S サブディレクトリ; /I 大文字小文字無視; /N 行番号; /M マッチしたファイル; /V 否定; /C:"text" リテラル
findstr /R /S /I /N "TODO\|FIXME" *.cssort [/R] [<file>]入力(またはファイル)をアルファベット / 数値順にソート;/+N で位置 N の文字をキー指定。
/R 逆順; /+N 文字位置 N でソート; [drive1:][path1] [drive2:][path2] 入出力
sort /R /+5 unsorted.txt sorted.txtfc /b file1 file22 つのファイルを比較;/b でバイト単位の比較(バイナリ)。
/b バイナリ比較; /a 略式出力; /l 行単位; /n 行番号表示
fc /b file1.bin file2.binシステム / ディスク
systeminfoホスト、OS、メモリ、ネットワークの詳細構成を出力します。
systeminfo /fo csv > sysinfo.csvtasklist [/FI <filter>]実行中のプロセスを PID、セッション、メモリ、イメージ名で一覧表示。
/v 詳細; /FI フィルタ(例:"IMAGENAME eq cmd.exe"); /M モジュール
tasklist /FI "IMAGENAME eq node.exe" /FO csvtaskkill /PID <pid> [/F]プロセスを PID(/IM でイメージ名指定)で強制終了します。
/F 強制; /IM イメージ名; /PID PID; /T ツリー(子プロセスも); /FI フィルタ
taskkill /IM chrome.exe /Fsc \[\\host] query|start|stop <service>サービス コントロール マネージャと通信;サービスの照会 / 設定を行います。
query state= all; start / stop; config starts auto|manual|disabled; create / delete
sc query state= all | moreshutdown [/s|/r|/a]ローカル / リモート PC をログオフ、再起動、シャットダウンします。
/s シャットダウン; /r 再起動; /a 中断; /t N 秒; /c "コメント"; /m \\host; /f アプリ強制終了
shutdown /r /t 60 /c "Windows Update"diskpart対話型ディスク パーティション ユーティリティ(管理者権限);list disk / partition / volume をサポート。
list disk / select disk N / clean / create partition primary / format fs=ntfs quick / assign letter=D
diskpart /s script.txtchkdsk <drive>ディスクのエラー検査と読み取り可能データの復旧を行います。
/f エラー修復; /r 不良セクタ復旧; /x 強制マウント解除; /v 詳細
chkdsk D: /f /r /xvol <drive>:ドライブのボリューム ラベルとシリアル番号を表示します。
vol C:ネットワーク
ipconfig [/all|/flushdns]TCP/IP 構成を表示;/flushdns は DNS クライアント キャッシュをクリア。
/all 詳細; /release / renew DHCP; /flushdns; /displaydns
ipconfig /all && ipconfig /flushdnsping [-n <count>] <host>到達性とレイテンシを ICMP echo で確認(既定 4 回)。
-n カウント; -t 連続; -l サイズ; -w タイムアウト(ms); -4 / -6 バージョン強制
ping -n 6 8.8.8.8tracert [-d] [-h <hops>] <host>ホストへのパケット経路をトレース;-d で逆引き DNS を省略。
-h 最大ホップ; -w タイムアウト; -d DNS なし; -4 / -6
tracert -d -h 15 google.comnslookup <host>DNS を照会 — 対話 / 非対話モードに対応。
server 8.8.8.8; type=A/AAAA/MX/CNAME/TXT; -timeout=N
nslookup example.com 1.1.1.1netstat [-an] [-b]アクティブな TCP / UDP 接続、リスニング ポート、所有プロセスを表示。
-a すべて; -b 所有 exe; -n 数値; -o PID; -p tcp|udp; -r ルーティング テーブル
netstat -ano | findstr :443net [user|localgroup|share|start|stop|use|time|view]ユーザー アカウント、共有、サービス、マップ済みドライブなどを扱う万能コマンド。
net user <name> /add; net localgroup Administrators; net share; net use x: \\host\share
net user alice P@ssw0rd! /add && net localgroup Administrators alice /addバッチ スクリプト
echo [on|off|<text>]コマンド エコーの切替、または改行なしでテキスト出力(末尾改行は set /p を使う)。
@echo off でプレフィックス抑止; & echo. で空行を出力
@echo off & echo Starting build...set <var>=<value>子プロセスから参照可能な環境変数を定義 / 変更します。
set /P var="prompt" で標準入力から読み込み; set /A var=expr で整数演算
set /A total = 5 * 20 + 3if [/i] [not] <condition> cmd条件分岐 — 文字列、数値、errorlevel、ファイル存在など。
if exist file; if %var% == value; if %errorlevel% neq 0; if defined
if exist .git (git status) else (git init)for /f [...] %%<var> in (...) do <cmd>ループ構造:/f(テキスト / コマンド出力解析)、/r(再帰)、/d(ディレクトリ)、プレーン(集合)。
tokens / delims / skip / usebackq; スクリプトでは %%i、コマンドラインでは %i
for /f "tokens=2 delims=:" %%p in ('reg query "HKCU\Software\Git" /v InstallPath') do set GIT_HOME=%%pcall <script> [<args>]別のバッチ スクリプトを呼び出し、終了後に戻ります(通常の呼び出しは呼び出し元を停止)。
? でヘルプ; /e:on で拡張機能を有効化; /v:on で遅延展開
call utils\env.bat && call build\compile.batgoto / rem / exitラベル(goto :label)、コメント(rem)、明示的な終了コード。
exit /b <code>; rem ←→ ... reset でブロック コメント
exit /b 1チートシート バージョン 1.0.0
Windows cmd.exe 10+ に対応