【完全保存版】Windows・Mac・Linuxのディレクトリ操作を徹底比較:基本から裏技まで

Prompt

はじめに

コマンドライン(CLI:Command Line Interface)とは、映画のハッカーが使用している真っ黒い画面に文字がばーっと並んでいる画面のことです。直感的に操作するGUI(グラフィカル・ユーザー・インターフェース)に比べて一見とっつきにくいですが、コマンドを覚えると大量の処理を驚くほど早く操作ができます。

とくにディレクトリ(フォルダ)操作はCLIの基礎でありながら、OSによって微妙な違いがあるため、クロスプラットフォームで作業する人にとって重要なポイントになります。

この記事では、Windowsのコマンドプロンプト(cmd.exe)Macのターミナル(Unixベースのbash/zsh)Linuxシェル(主にbash/zsh)におけるディレクトリ操作を徹底比較し、初心者から上級者まで役立つ情報をお届けします。


1. ディレクトリ構造の違いを理解する

1.1 Windowsのパス構造

Windowsはドライブレター方式(C:\、D:\など)を採用しています。これにより複数の物理ストレージを明確に区別できます。
例:

C:\Users\username\Documents
  • 区切り文字:\(バックスラッシュ)
  • ドライブごとにルートが存在
  • UNCパス(例:\\Server\Share)も使える

1.2 Unix系(Mac / Linux)のパス構造

Unix系OSでは、すべてのファイルシステムが1つのルート「/」からツリー構造として接続されます。
例:

/Users/username/Documents
  • 区切り文字:/(スラッシュ)
  • /がファイルシステム全体のルート
  • デバイスもファイルとして扱われる(例:/dev/sda1

2. 基本コマンド比較表(ディレクトリ操作)

操作内容Windows(cmd)Mac / Linux(bash/zsh)備考
カレントディレクトリ表示cd / chdirpwdUnix系ではcdは移動専用
ディレクトリの移動cd ディレクトリ名cd ディレクトリ名共通コマンド
一階層上に移動cd ..cd ..共通(..は親ディレクトリ)
ルートに移動cd \cd /ルート記号が異なる
ユーザーディレクトリに移動cd %USERPROFILE%cd ~ または cd環境変数 or チルダ(~)
ディレクトリ一覧表示dirlsUnix系ではls -lls -aも活用
ディレクトリ作成mkdir フォルダ名mkdir フォルダ名共通。親ディレクトリが無いと失敗
階層つき作成mkdir フォルダ\サブmkdir -p フォルダ/サブ-pで親もまとめて作成
ディレクトリ削除(空)rmdir フォルダ名rmdir フォルダ名共通
ディレクトリ削除(中身あり)rmdir /s フォルダ名rm -r フォルダ名-rはrecursiveの略

3. コマンド補完とエイリアスの違い

3.1 タブ補完機能

ほとんどのシェルではTabキーによる補完機能が使用可能です。たとえば cd Doc と入力してTabを押すと Documents に自動補完されます。

OSデフォルト動作コメント
Windows(cmd)基本対応ファイルやフォルダ名で補完
PowerShell高機能補完パラメータやコマンド名も補完可能
Mac/Linux高機能補完bash-completion により高度な補完

3.2 エイリアスとショートカット

Unix系ではaliasを使ってコマンド短縮が可能。Windowsではdoskeyコマンドで近い機能が使えます。

  • Linux例:alias ll='ls -la'
  • Windows例:doskey ls=dir

4. 実用例:よく使うパターン集

4.1 サブディレクトリをまとめて作成・移動

mkdir -p ~/Projects/Blog/Images
cd ~/Projects/Blog

Windowsなら:

mkdir Projects\Blog\Images
cd Projects\Blog

4.2 一覧取得+フィルタリング(WindowsとUnixの思想の違い)

Unix系(パイプとフィルタの哲学)

ls -l | grep "Jul"

Windows(findやforと組み合わせる)

dir | find "07/26"

5. 裏技・小技いろいろ

5.1 cd -(直前のディレクトリに戻る)

  • Unix系限定
cd -

5.2 pushd / popd(スタック形式で戻る)

OSpushdpopd
Windows対応対応
Unix系対応対応
pushd /etc
# 作業
popd  # 元のディレクトリに戻る

5.3 パスにスペースがあるときの注意

備考
cd "My Documents"ダブルクオート必須
cd My\ DocumentsUnixではバックスラッシュでエスケープ

6. 環境変数とパス解決の違い

OSユーザーディレクトリシステムパス確認
Windows%USERPROFILE%echo %PATH%
Mac / Linux$HOMEecho $PATH

7. GUIではわからないCLIの強み

CLIを使うメリット:

  • キーボードだけで高速操作
  • 複数のコマンドを連携できる
  • 自動化(バッチ・シェルスクリプト)が可能
  • SSHでリモートディレクトリ操作も簡単

8. よくあるトラブルとその対処

トラブル原因対処法
cdで「ファイルが見つかりません」パスのスペルミス or 大文字小文字ミスlsdirで中身確認、補完使用
mkdirで作成できない親フォルダが存在しないmkdir -pで階層ごと作成
rm -rで全削除してしまったオプションを誤用-i(確認付き)を使うと安全

まとめ

CLIによるディレクトリ操作は、OSごとの違いを理解すれば一気に自由度が広がります。Windowsのcmdから始まり、MacやLinuxのbash/zshを使いこなせるようになると、ファイル操作、スクリプト作成、サーバ操作、Gitなど多くの作業で役立ちます。

学習のポイントは、課題となる問題を見つけて実際に手を動かしてコマンドを打つこと。
闇雲にやっていても、つまらないし上達している感覚が得られない。まず自分が何がしたいかを見つけることが大事です。

このブログ記事が、皆さんのコマンドライン習得の一助となれば幸いです。

コメント

タイトルとURLをコピーしました