Windowsで作業するとき、コマンドプロンプトって使ってますか?
普段マウスを使って操作していることの大半はコマンドプロンプトを使うことでも実行できます。
使い方さえ覚えてしまえば、わざわざエクスプローラーなどでマウス操作をしなくてもコマンドプロンプトだけでファイルの移動などが実行でき、作業の効率化や簡略化につながります。
この記事では、Windowsのコマンドプロンプトで使う機会の多い主要コマンドを実際のコマンドの書き方付きで紹介します。
▼コマンドプロンプトについての解説はこちらをご覧ください▼
ディレクトリ操作
ディレクトリ(ファイルが格納されている階層)についての操作を行います。
コマンド | 意味 |
attrib <ファイル名> | ファイル属性の表示と設定を行う |
cd / chdir <移動先ディレクトリ> | ディレクトリを移動する |
dir <表示するディレクトリ> | ファイル・ディレクトリに含まれる情報を表示する |
md / mkdir <ディレクトリ名> | ディレクトリを作成する |
rd / rmdir <ディレクトリ名> | ディレクトリを削除する |
tree <表示したいディレクトリ> | フォルダ構造を図式表示する |
ディレクトリ操作で役立つテクニック
mdコマンドで複数階層のディレクトリを一気に作成する
md <ディレクトリ名> と入力する際に、ディレクトリ名の部分に”\abc\def\ghi\jkl”というように、複数の階層を指定すると、その階層のディレクトリが一度に作成されます。この例だと “\abc” から “\jkl” までですね。
エクスプローラー上で同様のことを行う場合には「新規作成>フォルダー」としてフォルダーの名前を変更する作業がディレクトリの階層と同じ数だけ発生するのですが、コマンドプロンプトを活用することで作業手順を短縮することができます。
treeコマンドでファイル名を表示する
tree <ディレクトリ名> とすると指定したディレクトリーからの階層構造がコマンドプロンプトに表示されます。このとき”tree /f <ディレクトリ名>”と、”/f”オプションを付けてコマンドを実行すると、フォルダーの中に含まれるファイル名も表示してくれます。
treeコマンドの表示結果をテキストファイルに出力する
“tree <ディレクトリ名> > <ファイル名>.txt”というように、ディレクトリ名と出力先にしたいテキストファイル名の間に”>”を付けることで出力結果をテキストファイルに残すことができます。
こちらも、”tree /f <ディレクトリ名> > …”というように /f オプションを付けることでファイル名を表示した結果を出力することができます。
ファイル操作
ファイルの移動やコピー・削除などを行います。
コマンド | 意味 |
icacls <ファイル/ディレクトリ> [オプション] | アクセス権を設定・表示をする |
comp <比較対象1> <比較対象2> | 2つのファイルをバイナリ比較する |
copy [コピー元] [コピー先] | ファイルをコピーする |
dir | ファイル・ディレクトリに含まれる情報を表示する |
del <ファイル/ディレクトリ名> | ファイルを削除する |
fc <比較対象1> <比較対象2> | 2つのファイルを比較して違いを表示する |
find <検索文字列> <検索対象のファイル> | ファイルの中からテキスト文字列を検索する |
findstr <検索文字列/正規表現> <検索対象のファイル> | 指定した文字列や正規表現パターンを含む文字列を検索する |
ftype <ファイル種別>[=<オープンコマンド文字列>] | 拡張子に関連したアプリケーションを設定する |
more <ファイル名> | ファイルの内容を一度に1つずつ表示する |
move <ファイル名> <移動先ディレクトリ> | ファイルの移動・名称変更 |
print <印刷するファイル名> | テキストファイルを印刷する |
recover <回復するファイル名> | 欠陥ディスクからファイルを回復する |
ren / rename <変更前ファイル名> <変更後ファイル名> | ファイル名・ディレクトリ名の変更 |
replace <置換前ファイル/ディレクトリ名> <置換後ファイル/ディレクトリ名> | ファイル名・ディレクトリ名を置き換える |
robocopy <コピー元ファイル/ディレクトリ> <コピー先ディレクトリ> | ユーザ情報を維持したままファイルやフォルダをコピーする |
sort <ファイル名> | データを並べ替える |
type <ファイル名> | ファイルの内容を表示する |
where <正規表現パターン> | ファイルを検索する |
xcopy <コピーするファイルのパス> <コピー先のパス> | ファイルをディレクトリ構造ごとコピーする |
ディスク操作
OSやファイルが入っているディスクの状態をチェックしたり、作成・変更・削除したりします。
コマンド | 意味 |
chkdsk [ドライブ/ディレクトリ/ファイル名] | ディスクの状態をチェックする |
chkntfs [ボリューム名] | 起動時のディスクチェックを設定する |
defrag [ボリューム名] | 断片化されたファイルを統合してディスクを最適化する |
label [ボリューム名] | ボリュームラベルを作成・変更・削除する |
vol [ボリューム名] | ディスクのボリュームラベルを表示する |
タスク
タスクの実行を予約したり、いま実行されているタスクについて操作したりします。
コマンド | 意味 |
at <実行予定時刻> <予約するコマンド> | プログラム・コマンドの実行を予約する |
schtasks <パラメーター> | タスクを作成・変更・削除・照会する |
tasklist [検索条件] | 実行中プロセスの一覧を表示する |
taskkill <終了するタスクの情報> | 指定したタスクを終了する |
情報表示・設定
ディスクやファイルに関する情報を表示したり、関連付けなどの設定を行ったりします。
コマンド | 意味 |
assoc <拡張子>[=<ファイル種別>] | 拡張子の関連付けを表示・設定する |
date [(オプション) | <月-日-年>] | 日付を表示・設定する |
ftype <ファイルタイプ>[=<ファイルを開くコマンド名>] | ファイルタイプとコマンドの関連付けを表示・設定する |
help <コマンド名> | コマンドのヘルプを表示する |
hostname | ホスト名を表示する |
sc <サーバー> [コマンド] <オプション1> <オプション2> … | サービスに関する設定・確認をする |
set <環境変数>=<関連付ける文字列> | 環境変数を表示・設定する |
setx [オプション] <環境変数> <設定する値> | 環境変数を永続設定する |
subst <ドライブ名>:<割り当てるパス名> | ドライブ名を割当て/解除する |
systeminfo [オプション] | システム構成情報を表示する |
time [オプション] | 時刻の表示設定をする |
vol [ドライブ名] | ボリュームラベルとシリアル番号を表示する |
ver | Windowsのバージョンを表示する |
whoami [表示形式] | ログイン中ユーザの情報を表示する |
テキスト
テキストに関する操作(比較・表示など)を行います。※すでに他の項目で紹介しているのでコマンドの記述例は省略します。
コマンド | 意味 |
comp | ファイルを比較する |
fc | 2つのファイルの相違点を表示する |
find | 文字列を検索する |
more | テキストの内容を1画面ごとに表示する |
type | テキストファイルの内容を表示する |
sort | テキストファイルのソートを表示する |
ユーティリティ
コマンドプロンプト自体の設定の変更などを行います。
コマンド | 意味 |
chcp <文字コード番号> | コンソールの文字コード(コードページ)を表示/設定する |
<コマンド> | clip もしくは clip < [ファイル名] | コマンド・ファイルの内容をクリップボードにコピーする |
cls | コンソールに表示された情報をクリアする |
cmd [オプション] | コマンドプロンプトを起動する |
color <色属性> | コンソールの色を設定する |
doskey <オプション> | マクロを設定する |
exit [オプション] | コンソールを修了する |
prompt [オプション] | コマンドプロンプトを表示・変更する |
start <タイトル> [オプション] | 新規コマンドプロンプトを作成する |
title <タイトル名> | コマンドプロンプトのタイトルを設定する |
ログイン・ログアウト
コマンドを実行するユーザーや、マシンに関する操作を行います。
コマンド名 | 意味 |
runas [オプション] /user:<ユーザー名> <実行するプログラム> | 別ユーザの権限でプログラムを実行する |
shutdown [オプション] | システムをシャットダウン/再起動する |
ネットワーク
ネットワーク上の通信に関する操作を行います。
コマンド名 | 意味 |
arp [オプション <IPアドレス>] | IPアドレス・MACアドレスを状況確認/変更する |
curl <URL> | URLでのデータを送受信する |
ftp [オプション] | FTPサーバーにログオンする/ファイルを転送する |
ipconfig [オプション] | ネットワークの設定を確認する |
getmac [オプション] | MACアドレスを表示する |
logoff [オプション] | セッションを終了する |
nbtstat [オプション] | ネットワーク接続状況を確認する |
net [オプション] | ネットワーク操作をする |
netstat [オプション] | TCP/IP通信の状況を確認する |
nslookup [サブコマンド] [オプション] | DNSサーバを問い合わせる |
pathping [オプション] | ネットワークの経路を確認する |
ping [オプション] <IPアドレス> | ネットワークの疎通を確認する |
tracert [オプション] | ネットワークの経路を確認する |
route [オプション] | ルーティングテーブルを表示/追加/削除/変更する |
バッチファイル・スクリプト処理
バッチファイル(拡張子が”.bat”のファイル)に関する操作などを行います。
コマンド名 | 意味 |
call <ファイル名> | プログラムやバッチファイルを呼び出す |
choice [オプション <文字1><文字2><文字3>…] | バッチプログラムの選択肢入力(y/n/…)を受け付ける |
cscript <スクリプト名.拡張子> [オプション] | スクリプトファイルを実行する |
endlocal | 環境変数のローカル化を終了する |
for %<変数> in (範囲) do <コマンド名> | ループ処理をする |
if [not] {ERRORLEVEL <数値>|<文字列1>==<文字列2>|exist <ファイル名>} <コマンド名> | 条件処理をする |
pause | 処理を一時停止する |
rem [コメント] | コメントを記述する |
setlocal [オプション] | 環境変数のローカル化を開始する |
shift [/n <番号>] | 引数の値を変更する |
timeout /t <待機する秒数> [オプション] | プログラムの実行を一定時間待機する |
システム管理
OSの設定やディスクの設定など、システム全体に関する操作を行います。
コマンド名 | 意味 |
assoc | ファイルと拡張子関連を表示/設定する |
at | 指定日時でのプログラムを実行する |
bootcfg <パラメーター> [引数] | boot.iniファイルを編集する |
call | プログラムやバッチファイルを呼び出す |
chcp | 利用する文字コードを変更する |
chkdsk | ドライブのエラーチェック/修復をする |
convert | ファイルシステムをFATからNTFSへ変更する |
date | システム日付を表示/変更する |
eventcreate [オプション] /t <イベント種別> /id <イベントID> /d <説明> | イベントログを出力する |
exit | ログアウト/終了する |
format <ボリュームラベル> [オプション] | ディスクをWindowsで利用可能な形式にフォーマットする |
hostname | ホスト名を表示する |
label | ディスクボリュームラベルを作成/変更/削除する |
path <パス> | ファイル・プログラムのディレクトリを表示/設定する |
runas | 別ユーザの権限でプログラムを実行する |
shutdown | シャットダウン/再起動/ログオフする |
start | 新たなコマンドプロンプト画面を起動する |
time | 時刻を設定/表示する |
コマンドプロンプトで使えるショートカットキー
コマンドプロンプトのようなコマンドラインインターフェイス(CLI)ではマウスの操作性が良くないので、キー操作を覚えておくことが重要になります。
コマンド | 意味 |
→ | 右へカーソルを移動する |
← | 左へカーソルを移動する |
Ctrl+→ | 右に単語単位でカーソルを移動する |
Ctrl+← | 左に単語単位でカーソルを移動する |
Home | 行の先頭にカーソルを移動する |
End | 行の終端にカーソルを移動する |
Backspace | カーソルの左にある文字を1つ削除する |
↑ / F5 | 一つ前に実行したコマンド履歴を表示する |
↓ | 一つ後に実行したコマンドを表示する |
Esc | 現在入力中のコマンドをクリアする |
Ctrl+C | (タスク実行中のみ)実行中のコマンドを中止する |
Tab | コマンド入力を補完する |
F7 | コマンド履歴を表示する |
Alt + F7 | コマンド履歴を消去する |
Alt + Enter | フルスクリーンモードをON / OFFする |
Windows10以降ではコマンドプロンプトでCtrl+C/Ctrl+Vが使用可能
従来のWindowsでは、コマンドプロンプトでCtrl+CやCtrl+Vといったキーボードショートカットを押下すると実行中のコマンドの中止や一時停止といった動作になり、コマンドプロンプト以外で使えているテキストのコピー/ペーストはできませんでした。(これはWindows以前のMS/DOS時代から続いていた仕様です)
しかし、Windows10からはこれらのショートカットでコピー/ペーストができるオプションが追加され、より快適にコマンドプロンプトを利用することができるようになりました。
なお、テキストのコピーが有効になるのはテキスト選択中のみで、何も選択していない状態でCtrl+Cを押した場合は従来どおり実行中のタスクを終了するコマンドが送信されます。
コマンドプロンプトの勉強方法
書籍やインターネットで学習する方法があります。昨今では、YouTubeなどの動画サイトやエンジニアのコミュニティサイトなども充実していて多くの情報が手に入ります。
そして、より効率的に知識・スキルを習得するには、知識をつけながら実際に手を動かしてみるなど、インプットとアウトプットを繰り返していくことが重要です。特に独学の場合は、有識者に質問ができたりフィードバックをもらえるような環境があると、理解度が深まるでしょう。
ただ、コマンドプロンプトに限らず、ITスキルを身につける際、どうしても課題にぶつかってしまうことはありますよね。特に独学だと、わからない部分をプロに質問できる機会を確保しにくく、モチベーションが続きにくいという側面があります。独学でモチベーションを維持する自信がない人にはプログラミングスクールという手もあります。費用は掛かりますが、その分スキルを身につけやすいです。しっかりと知識・スキルを習得して実践に活かしたいという人はプログラミングスクールがおすすめです。
プログラミングスクールならテックマニアがおすすめ!
ITスキル需要の高まりとともにプログラミングスクールも増えました。しかし、どのスクールに通うべきか迷ってしまう人もいるでしょう。そんな方にはテックマニアをおすすめします!これまで多くのITエンジニアを育成・輩出してきたテックマニアでもプログラミングスクールを開講しています。
<テックマニアの特徴>
・たしかな育成実績と親身な教育 ~セカンドキャリアを全力支援~
・講師が現役エンジニア ~“本当”の開発ノウハウを直に学べる~
・専属講師が学習を徹底サポート ~「わからない」を徹底解決~
・実務ベースでスキルを習得 ~実践的な凝縮カリキュラム~
このような特徴を持つテックマニアはITエンジニアのスタートラインとして最適です。
話を聞きたい・詳しく知りたいという方はこちらからお気軽にお問い合わせください。