表記規則
単語の表記規則
パス名には英数字だけでなく空白や改行などの文字、漢字のような複数バイトで構成される文字などが含まれる可能性があります。そのような文字は TOMOYO Linux では8進数表記で扱います。以下は特別な文字を表現するためのテーブルです。
横方向が下位の4ビットを、縦方向が上位の4ビットを示しています。
0x0 |
0x1 |
0x2 |
0x3 |
0x4 |
0x5 |
0x6 |
0x7 |
0x8 |
0x9 |
0xA |
0xB |
0xC |
0xD |
0xE |
0xF |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0 |
\000 |
\001 |
\002 |
\003 |
\004 |
\005 |
\006 |
\007 |
\010 |
\011 |
\012 |
\013 |
\014 |
\015 |
\016 |
\017 |
0x1 |
\020 |
\021 |
\022 |
\023 |
\024 |
\025 |
\026 |
\027 |
\030 |
\031 |
\032 |
\033 |
\034 |
\035 |
\036 |
\037 |
0x2 |
\040 |
! |
" |
# |
$ |
% |
& |
' |
( |
) |
* |
+ |
, |
- |
. |
/ |
0x3 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
: |
; |
< |
= |
> |
? |
0x4 |
@ |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
0x5 |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
[ |
\\ |
] |
^ |
_ |
0x6 |
` |
a |
b |
c |
d |
e |
f |
g |
h |
i |
j |
k |
l |
m |
n |
o |
0x7 |
p |
q |
r |
s |
t |
u |
v |
w |
x |
y |
z |
{ |
| |
} |
~ |
\177 |
0x8 |
\200 |
\201 |
\202 |
\203 |
\204 |
\205 |
\206 |
\207 |
\210 |
\211 |
\212 |
\213 |
\214 |
\215 |
\216 |
\217 |
0x9 |
\220 |
\221 |
\222 |
\223 |
\224 |
\225 |
\226 |
\227 |
\230 |
\231 |
\232 |
\233 |
\234 |
\235 |
\236 |
\237 |
0xA |
\240 |
\241 |
\242 |
\243 |
\244 |
\245 |
\246 |
\247 |
\250 |
\251 |
\252 |
\253 |
\254 |
\255 |
\256 |
\257 |
0xB |
\260 |
\261 |
\262 |
\263 |
\264 |
\265 |
\266 |
\267 |
\270 |
\271 |
\272 |
\273 |
\274 |
\275 |
\276 |
\277 |
0xC |
\300 |
\301 |
\302 |
\303 |
\304 |
\305 |
\306 |
\307 |
\310 |
\311 |
\312 |
\313 |
\314 |
\315 |
\316 |
\317 |
0xD |
\320 |
\321 |
\322 |
\323 |
\324 |
\325 |
\326 |
\327 |
\330 |
\331 |
\332 |
\333 |
\334 |
\335 |
\336 |
\337 |
0xE |
\340 |
\341 |
\342 |
\343 |
\344 |
\345 |
\346 |
\347 |
\350 |
\351 |
\352 |
\353 |
\354 |
\355 |
\356 |
\357 |
0xF |
\360 |
\361 |
\362 |
\363 |
\364 |
\365 |
\366 |
\367 |
\370 |
\371 |
\372 |
\373 |
\374 |
\375 |
\376 |
\377 |
まとめ:
- \ 文字( 0x5C )は 8 進数表記であることを示すために使用されるため、 \\ のように 2 個続けます。
- 0x00 ~ 0x20 および 0x7F ~ 0xFF は \ooo という形式の 8 進数で表記します。
- 単語と単語を区切るデリミタとして空白文字( 0x20 )を、行と行を区切るデリミタとして改行文字( 0x0A )を使用します。
- それ以外の文字は空白文字とみなされます。
- 連続する空白文字は自動的に 1 個の空白文字に圧縮されます。行頭及び行末の空白文字は自動的に削除されます。
例:
- Hello world! という文字列は Hello\040world! のように表記します。
パターンの表記規則
複数のパス名に一致させるためのワイルドカードを使用することができます。以下のワイルドカードをサポートしています:
ワイルドカード |
意味 |
使用例 |
---|---|---|
\* |
/ 以外の0回以上の繰り返し |
/var/log/samba/\* |
\@ |
/ と . 以外の0回以上の繰り返し |
/var/www/html/\@.html |
\? |
/ 以外の1文字 |
/tmp/mail.\?\?\?\?\?\? |
\$ |
1桁以上の10進数 |
/proc/\$/cmdline |
\+ |
10進数1桁 |
/var/tmp/my_work.\+ |
\X |
1桁以上の16進数 |
/var/tmp/my-work.\X |
\x |
16進数1桁 |
/tmp/my-work.\x |
\A |
1文字以上のアルファベット |
/var/log/my-work/\$-\A-\$.log |
\a |
アルファベット1文字 |
/home/users/\a/\*/public_html/\*.html |
\- |
パス名を除外する演算子(否定的一致) |
/\*\-proc\-sys/ /proc/ と /sys/ 以外の /\*/ |
/\{dir\}/ |
再帰的にディレクトリに一致する演算子 / +1回以上の dir/ の繰り返し |
/var/www/html/\{\*\}/ /var/www/html/ 以下にあるサブディレクトリ全て( /var/www/html/ を含まないことに注意) /var/www/html/\{\*\}/\*.html /var/www/html/ 以下のサブディレクトリにある全ての *.html ( /var/www/html/\*.html を含まないことに注意) |
ファイルシステムの表記規則
パス名は通常 / で始まりますが、 rename 操作をサポートしないファイルシステム上のパス名についてはファイルシステムの名前をプレフィックスとして指定します。
カーネルでサポートされているファイルシステムの一覧を見るには、以下のコマンドを実行してください:
$ cat /proc/filesystems
(通常 /proc/ ディレクトリにマウントされている) proc ファイルシステムは rename 操作をサポートしないファイルシステムの一例です。そのため、 /proc/meminfo というパス名は proc:/meminfo と表記します。