Umask 組込みコマンドはシェルプロセスのファイルモード作成マスクを表示・設定します。
umask [-S] [値]
オペランドの値が与えられていないとき、umask コマンドはシェルプロセスの現在のファイルモード作成マスクを標準出力に出力します。-S
(--symbolic
) オプションで出力の形式を指定できます。
オペランドの値が与えられているとき、umask コマンドはシェルプロセスのファイルモード作成マスクを与えられた値に設定します。
Umask コマンドの出力はオペランドの値として利用可能な形式になっています。
-S
, --symbolic
数値形式は 0 以上の八進整数でマスクを指定します。これは以下の各モードを表す自然数のいくつかの和です。
0400 | ユーザの読み取り権限 |
0200 | ユーザの書き込み権限 |
0100 | ユーザの実行権限 |
0040 | グループの読み取り権限 |
0020 | グループの書き込み権限 |
0010 | グループの実行権限 |
0004 | その他の読み取り権限 |
0002 | その他の書き込み権限 |
0001 | その他の実行権限 |
記号形式は以下のような書式の記号列でマスクしない権限を指定します。記号列はカンマ (,
) で区切って複数指定できます。
対象 動作…
対象には以下の記号をいくつでも指定できます。
u | ユーザ |
g | グループ |
o | その他 |
a | ユーザ・グループ・その他の全て |
対象を省略すると a
が指定されているものとみなします。
動作は以下の演算子と値の組み合わせです。
= | 対象に対する設定を値にします。 |
+ | 対象に対する設定に値を加えます。 |
- | 対象に対する設定から値を除きます。 |
r | 読み取り権限 |
w | 書き込み権限 |
x | 実行権限 |
X | 実行権限 (元々実行権限が設定されていた場合のみ) |
s | Set-user-ID, Set-group-ID |
u | 現在のユーザの値 |
g | 現在のグループの値 |
o | 現在のその他の値 |
値では r
, w
, x
, X
, s
の記号同士は一度に組み合わせて指定できます。
例えば umask u=rwx,go+r-w
を実行すると、ユーザの読み取り権限と書き込み権限と実行権限をマスクしないようにし、グループとその他の読み取り権限をマスクしないようにし、グループとその他の書き込み権限をマスクするようにします。
ファイルモード作成マスクが正しく出力または設定できたときは、終了ステータスは 0 です。エラーがあると終了ステータスは非 0 です。
Ulimit コマンドは準特殊組込みコマンドです。
POSIX は -S
オプションを指定しなかった場合の出力形式が必ずしも数値形式であるとは規定していません。