その他 - 使用不可の文字

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動

概要

LinuxおよびWindowsでは、ディレクトリ名やファイル名に使用不可の文字がある。
しかし、これら以外にも使用しない方がよい文字も存在する。


Linux上で使用不可の文字

Linux (Unix) において、ディレクトリ名およびファイル名として使用できない文字は以下に示す2つのみである。

使用不可の文字 読み方
/ スラッシュ
ASCIIコード : 0x2F

ファイルマネージャにて/文字を使用したディレクトリ名およびファイル名を作成する場合、自動的にに置き換えられる場合がある。
\0 NULL文字
ASCIIコード : 0x00

ファイルマネージャにて\0文字を使用したディレクトリ名およびファイル名を作成する場合、自動的に'\0'に置き換えられる場合がある。



Windows上で使用不可の文字

Windowsにおいて、ディレクトリ名としてとして使用できない文字は以下に示す9つである。
ただし、全角文字であれば使用できる。

使用不可の文字 読み方
" ダブルクオーテーション
< 左ブラケット
> 右ブラケット
バーティカルバー
: コロン
* アスタリスク
? クエスチョンマーク
\ バックスラッシュ
円記号
/ スラッシュ


Windowsにおいて、ファイル名として使用できない文字は、上記の文字に加えて以下の文字列も使用不可である。

以下に示す文字列は特別な意味を持っており、ファイル名として使用できない。
これらの文字列を使用すると、指定されたデバイス名は無効です。というエラーメッセージが発生する。

使用不可の文字列 意味
COM0 〜 COM9 COMポート名
PC/AT互換機が備えるシリアルポート(RS-232CやRS-485ポート等)のMS-DOSやWindowsにおける呼称である。
COM1〜COM9までの符号が予約されている。
LPT0 〜 LPT9 LPTポート
周辺機器の接続に用いられたパラレルポートのMS-DOSやWindows上での識別名であり、LPTおよびLPT1~LPT9が用いられる。
CON コンソールを表す予約語である。
PRN プリンタを表す予約語である。
AUX 補助(予備)デバイスを表す予約語である。
NUL ビットバケツ(PCデータの削除の全般)を表す予約語である。
CLOCK$
CLOCK
Windows10では使用できる場合がある。
Windows11では使用できる。


キーボードでは入力できないが、下表に示す文字も使用できない。

文字コード コード 意味
0x00 NUL 空文字 / 終端
0x01 SOH ヘッダ開始
0x02 STX テキスト開始
0x03 ETX テキスト終了
0x04 EOT 伝送終了
0x05 ENQ 問い合わせ
0x06 ACK 肯定応答
0x07 BEL 警告音を鳴らす
0x08 BS 1文字後退
0x09 HT 水平タブ
0x0A LF / NL 改行
0x0B VT 垂直タブ
0x0C FF / NP 改ページ
0x0D CR 行頭復帰
0x0E SO シフトアウト(多バイト文字終了)
0x0F SI シフトイン(多バイト文字開始)
0x10 DLE データリンク拡張(バイナリ通信開始)
0x11 DC1 装置制御1
0x12 DC2 装置制御2
0x13 DC3 装置制御3
0x14 DC4 装置制御4
0x15 NAK 否定応答
0x16 SYN 同期
0x17 ETB 伝送ブロック終了
0x18 CAN 取り消し
0x19 EM 記録媒体終端
0x1A SUB / EOF 文字置換 / ファイル終端
0x1B ESC エスケープ(特殊文字開始)
0x1C FS ファイル区切り
0x1D GS グループ区切り
0x1E RS レコード区切り
0x1F US ユニット区切り