ファイル名・パス制限の横断早見表
「Windowsは260文字まで」「Linuxは255文字まで」といった通念に対し、OS・ファイルシステム・クラウドストレージ・アーカイブ形式・転送方式が実際に公式資料でどう規定しているかを、出典つきで横断比較できる一覧です。
このサイトの読み方
各プラットフォームについて、7つの項目を「どの公式資料に、どう書かれているか」という事実だけで整理しています。当サイトは「このファイル名やパスが使えるか」を判定しません。
| 表示 | 意味 |
|---|---|
| 値をそのまま表示 | 公式資料に記載されている値そのもの(単位が必要な項目は必ずバイト/文字を併記) |
| 公式記載なし | 公式資料を探索したが、その項目についての記載を確認できなかった。「制限がない」という意味ではありません。 |
| 未確認 | 調査がまだ及んでいない。「公式記載なし」とは異なり、今後確認され次第更新される可能性がある項目 |
セルの右に付く小さなバッジ(例: POSIX由来)は、その規定がそのプラットフォーム固有の文書ではなく、上位の標準・仕様に由来することを示します。この定義表を引用・転載いただく場合は、出典として「ファイル名・パス制限の横断早見表」とお示しください。リンクは任意です(この表への直接リンク)。
横断比較表
表示の3状態: 値を表示公式資料に記載された値そのもの / 公式記載なし探索したが記載を確認できず / 未確認調査が及んでいない
バッジ: 例: POSIX由来そのプラットフォーム固有の規定ではなく、上位の標準・仕様に由来することを示す注記
単位: ファイル名長・パス長は「バイト」か「文字」かで実際に使える長さが大きく変わるため、値には必ずどちらかを併記しています。
| プラットフォーム | 区分 | 禁止文字 | 予約名 | ファイル名の長さ上限 | パス長の上限 | 大文字小文字 | Unicode正規化 | 末尾のドット・空白 | 確認日 |
|---|---|---|---|---|---|---|---|---|---|
| Linux / ext4¶ | ファイルシステム | NULと/のみ。ext4固有文書(admin-guide/ext4.rst等)に追加の禁止文字定義はない POSIX由来 | 公式記載なし | 255 バイト | {PATH_MAX}バイト(終端NUL含む、数値は実装依存) (単位: バイト) POSIX由来 | 既定は区別する。casefold機能(opt-in)を有効化したディレクトリのみ非区別。ディレクトリ単位で混在可能 | 既定では正規化しない。casefold有効ディレクトリのみ比較時にCanonical Decomposition Form(NFD相当)へ内部変換。ディスク上のバイト列自体は元表記のまま(name-preserving) | NULと/以外を禁じる規定はなく、末尾ドット・空白を禁じる規定もない POSIX由来 | 2026年7月26日 |
| Linux / XFS・Btrfs¶ | ファイルシステム | NULと/のみ。XFS/Btrfsそれぞれの固有文書に追加の禁止文字定義はない POSIX由来 | 公式記載なし | 255(両者とも。ただし根拠が異なる) (単位: バイト) | {PATH_MAX}バイト(実装依存)。Btrfs公式文書もsymlink長の文脈で「the system limit PATH_MAX」と言及 (単位: バイト) POSIX由来 | 未確認 | 公式記載なし | NULと/以外を禁じる規定はなく、末尾ドット・空白を禁じる規定もない POSIX由来 | 2026年7月26日 |
| macOS / APFS¶ | ファイルシステム | NULと/のみ。Apple File System Reference.pdf本文にも文字種以外の禁止文字一覧はない POSIX由来 | 公式記載なし | 未確認 | {PATH_MAX}バイト(終端NUL含む、数値は実装依存) (単位: バイト) POSIX由来 | macOSでは既定は非区別(区別するvariantも存在)。iOSでは区別 | 正規化非依存(normalization-insensitive)だが正規化形を保持(preserving)。ハッシュ計算時のみNFD(正準分解)を使用 | NULと/以外を禁じる規定はなく、末尾ドット・空白を禁じる規定もない POSIX由来 | 2026年7月26日 |
| macOS / HFS+¶ | ファイルシステム | NULと/のみ。TN1150本文に禁止文字の一覧はない POSIX由来 | 公式記載なし | 255 文字 | {PATH_MAX}バイト(終端NUL含む、数値は実装依存) (単位: バイト) POSIX由来 | 既定は非区別。HFSXという派生フォーマットは区別 | ディスク上に常に完全分解形(fully decomposed form)で格納。ただし標準Unicode NFDと完全に同一ではなくHFS+固有の分解テーブル(Unicode 3.2ベース、一部範囲は例外) | NULと/以外を禁じる規定はなく、末尾ドット・空白を禁じる規定もない POSIX由来 | 2026年7月26日 |
| Windows / FAT32・exFAT¶ | ファイルシステム | 9種: " * / : < > ? \ | + 制御コード0000h-001Fh。NTFSと同一集合 | 公式記載なし | 255 文字 | 32,760(各要素は255文字まで) (単位: 文字) | 非区別・保持(Case-sensitive: No / Case-preserving: Yes) | 公式記載なし | 公式記載なし | 2026年7月26日 |
| Windows / NTFS¶ | ファイルシステム | 9種の予約文字(< > : " / \ | ? *)+ 整数値0(NUL)+ 制御文字1-31(ADSを除く) | CON, PRN, AUX, NUL, COM1-9(上付き数字版含む), LPT1-9(上付き数字版含む)。拡張子を付けても予約名のまま | 255 文字 | 既定はMAX_PATH=260文字(Win32 API)。\\?\接頭辞使用時は最大32,767文字。NTFS自体の限界は32,760文字(各要素255文字まで) (単位: 文字) | 既定は非区別(大文字小文字は保持のみ)。POSIXセマンティクス使用時は区別可能だが既定ではない | 正規化を行わない(WCHARの不透明な列として扱う) | 末尾の空白・ピリオドは不可(シェル/UIレベルの制約と明記) | 2026年7月26日 |
| POSIX Portable Filename Character Set¶ | 標準 | 許可される文字集合として定義: A-Z, a-z, 0-9, ピリオド(.)、アンダースコア(_)、ハイフンマイナス(-)の65文字 | 公式記載なし | {NAME_MAX}バイト(実装依存の定数) (単位: バイト) | {PATH_MAX}バイト(実装依存の定数) (単位: バイト) | 公式記載なし | 公式記載なし | 公式記載なし | 2026年7月26日 |
| Box¶ | クラウドストレージ | 9種: < > : " / \ | ? *。加えて非印字ASCII文字、特殊名'.'/'..'そのものも不可。Unicode BMP文字のみサポート | 公式記載なし | 255 文字 | 公式記載なし | 区別しない。アクセント記号も区別しない(例: aとăを同一視) | 公式記載なし | 先頭・末尾の空白は不可(Box自身の規定)。末尾ピリオドはWindows OS自体の制約として言及 | 2026年7月26日 |
| Dropbox¶ | クラウドストレージ | 常時不可: / (forward slash), \ (backslash)。非推奨(同期・表示不具合の可能性): < > : " | ? * .(末尾ピリオドは例外あり) | 公式記載なし | 公式記載なし | 260未満 (単位: 文字) | 公式記載なし | 公式記載なし | 末尾ピリオドはWindows環境に限り不可(他OSでは可)。末尾スペースは不可 | 2026年7月26日 |
| Google Drive¶ | クラウドストレージ | 公式記載なし | 公式記載なし | 公式記載なし | 公式記載なし | 公式記載なし | 公式記載なし | 公式記載なし | 2026年7月26日 |
| iCloud Drive¶ | クラウドストレージ | コロン(:)不可、先頭ピリオド(.)不可。一部アプリでは/(スラッシュ)不可 macOS Finder由来 | 公式記載なし | 公式記載なし | 各セグメント(ファイル名/フォルダ名単体)は256文字未満を推奨/要求。パス全体の合計文字数上限は非公開 (単位: 文字) | 公式記載なし | 公式記載なし | 先頭ピリオドは不可(forbiddenChars欄参照)。末尾ドット・末尾スペースそのものへの言及は公式記載なし macOS Finder由来 | 2026年7月26日 |
| OneDrive / SharePoint¶ | クラウドストレージ | 9種: " * : < > ? / \ |(先頭・末尾の空白も不可) | .lock, CON, PRN, AUX, NUL, COM0-9, LPT0-9, _vti_, desktop.ini, ~$で始まる名前 | 255(OS制限によるものとページに明記) (単位: 文字) | 400文字(パス全体、ファイル名込み)。PC/Mac同期時はルート+相対パスで520文字上限。Windows Explorerでは256文字。SharePoint Serverは260文字 (単位: 文字) | 公式記載なし | 公式記載なし | 先頭・末尾の空白は不可。末尾ドットについては本ページに記載なし | 2026年7月26日 |
| Amazon S3 のオブジェクトキー¶ | 転送・その他 | 技術的にはUTF-8であれば任意の文字を使用可能。3段階の運用ガイドライン(安全な文字/特別な処理が必要な文字/避けるべき文字)として整理されている | 公式記載なし | 1024(プレフィックス・デリミタ(/)・オブジェクト名すべて込み) (単位: バイト) | 公式記載なし | 区別する | 公式記載なし | 末尾ピリオドはS3自体には保存されるが、コンソール経由でダウンロードすると失われる(CLI/SDK/REST APIなら保持)。末尾空白は公式記載なし | 2026年7月26日 |
| Git¶ | 転送・その他 | 公式記載なし | .gitと等価とみなされる名前のチェックアウトを防御的にブロック(core.protectHFS / core.protectNTFS) | 公式記載なし | 本家git-scm.comの公式git-configマニュアルにはcore.longpaths相当の設定は存在しない(全文検索0件)。Git for Windows独自拡張のcore.longPathsが既定で260文字超の絶対パスのチェックアウトを拒否する (単位: 文字) | Git自体に固定ルールはなく、リポジトリ作成時に下位ファイルシステムを検出してcore.ignoreCaseを自動設定する | macOS版Gitのcore.precomposeUnicodeにより、HFS+/APFSのNFD分解をGitが元に戻すオプションがある(macOSとLinux/Windows間のファイル名不一致対策) | 公式記載なし | 2026年7月26日 |
| Windows 8.3短縮名¶ | 転送・その他 | naming-a-fileページの一般的禁止文字9種+NUL+制御文字がそのまま適用される。ASCII(0x80未満)のみ使用可 | NTFS予約名(CON/PRN/AUX/NUL/COM1-9/LPT1-9等)がそのまま適用される | ベース名1-8文字+拡張子1-3文字(存在する場合)、合計最大12文字(ピリオド込み) (単位: 文字) | ディレクトリ作成時、8.3名(最大12文字)を追記できるようMAX_PATH-12文字までに制限される (単位: 文字) | 公式記載なし | 公式記載なし | 空白文字は8.3名に一切含められない。末尾ピリオドそのものの可否は明記なし(複数ピリオド不可の規定のみ) | 2026年7月26日 |
全件の早見表をCSVでダウンロード(UTF-8 BOM付き・Excelでそのまま開けます)
アーカイブ・転送経路のファイル名エンコーディング
ZIPなどのアーカイブ形式や、MIME/Content-Dispositionのような転送方式は、OSやファイルシステムと違って「禁止文字」「大文字小文字の区別」という考え方にはなじみません。ここでは代わりに、既定の文字コード・Unicode対応の仕組み・文字化けが起こる条件・パス長の上限の4項目で整理しています。
表示の3状態: 値を表示公式資料に記載された値そのもの / 公式記載なし探索したが記載を確認できず / 未確認調査が及んでいない
| 形式 | 既定の文字コード | Unicode対応の仕組み | 文字化けが起こる条件 | パス長の上限 | 確認日 |
|---|---|---|---|---|---|
| 7-Zip (.7z)¶ | 公式記載なし | ファイル名はヌル終端のwchar_t配列として格納される(kNamesセクション) | 未確認 | 未確認 | 2026年7月26日 |
| MIME / Content-Disposition¶ | filenameパラメータ(星なし)は、filename*との対比の中でISO-8859-1相当の文字集合に限られることが示されている | filename*パラメータがRFC 5987のエンコーディング(charset'language'value形式とパーセントエンコーディング%XX)でISO-8859-1にない文字を扱う | filename*を解釈できない旧実装は、filenameパラメータ(ISO-8859-1相当の文字集合)にフォールバックするため、非ISO-8859-1文字を含む名前は文字化け・欠落しうる | 公式記載なし | 2026年7月26日 |
| RAR (RAR 5.0)¶ | 公式記載なし | RAR 5.0はファイル名を常にUTF-8で格納する(ビットフラグによる切替なし、ZIPとの明確な違い) | 未確認 | 未確認 | 2026年7月26日 |
| ZIP¶ | IBM Code Page 437(汎用フラグのビット11が立っていない場合。義務の強さはSHOULDでありMUSTではない) | 汎用フラグ ビット11(Language encoding flag/EFS)を立てると、ファイル名とコメントはUTF-8でMUST(必須)エンコード | 汎用フラグのビット11が立っていないZIPは、規格上 CP437 として解釈される。ファイル名が CP932 で書かれているとこの解釈で文字化けする | 未確認 | 2026年7月26日 |
こちらもCSVダウンロードに含まれています(UTF-8 BOM付き)。
掲載方針
- 出典は各社・各団体の公式ドキュメント(規格仕様書・公式ヘルプ・開発者向けリファレンス等)のみです。まとめ記事・個人ブログ・非公式フォーラムは出典として使用していません。
- 公式資料を探索した上で記載を確認できなかった項目は「公式記載なし」、調査がまだ及んでいない項目は「未確認」と、明確に書き分けています。どちらも「制限がない」という意味ではありません。
- ファイル名の長さ・パスの長さは、規定によって「バイト」と「文字」のどちらで数えているかが異なります(例: UTF-8の日本語1文字は3バイト)。取り違えを防ぐため、値には必ず単位を併記しています。
- ある規定が、そのプラットフォーム固有の文書ではなく上位の標準・仕様(例: POSIX)に由来する場合は、バッジで明示しています。
- 本サイトは「このファイル名やパスを使ってよいか」を判定しません。掲載しているのは各社・各団体の公開資料に書かれている内容の要約です。仕様は改定されうるため、必ず原典でご確認ください。
この早見表を引用する場合
本早見表の情報を引用・紹介いただく場合は、名称「ファイル名・パス制限の横断早見表」と情報確認日「2026年7月26日」をあわせてお示しください。当サイトへのリンクは任意です(リンクいただける場合は https://www.conbu.jp/tool/filename-limits/ をご利用ください)。
免責事項: 本サイトは各社・各団体の公式サイトではなく、「このファイル名やパスを使ってよいか」を判定するものでもありません。掲載している内容は調査時点で公式資料から確認できた要約です。仕様は改定されうるため、利用前に必ず原典をご確認ください。詳細は免責事項をご確認ください。