ファイル名の大文字小文字について、ファイルシステムの扱いがおおよそ3パタンあります:
1. 違いが認識・保存されるが、厳格ではない (case preserved && case insensitive)
例: NTFS, HFS (デフォルト), APFS (デフォルト)
- ファイル名
a
で保存すると、a
として保存される - ファイル
a
とA
が同時に存在できない - ファイル名
a
で、ファイルA
をアクセスできる
2. 違いが認識・保存される、かつ厳格 (case preserved && case sensitive)
例: HFS (オプショナル), APFS (オプショナル), ext, XFS, btrfs, zfs (デフォルト) // (Linuxのほぼ全部ファイルシステム)
- ファイル名
a
で保存すると、a
として保存される。 - ファイル
a
とA
が同時に存在できる - ファイル名
a
で、ファイルA
をアクセスできない
3. 違いが認識・保存されない (case not preserved)
例: FAT
- ファイル名
a
で保存すると、大文字化されA
として保存される - ファイルシステム上
a
があり得ないため、"同時に存在する"問題自体がない - ↑の同原因で、ファイル名
a
で、ファイルA
をアクセスできる