Umask 組込みコマンドはシェルプロセスのファイルモード作成マスクを表示・設定します。

構文

  • umask マスク

  • umask [-S]

説明

オペランドが与えられていないとき、umask コマンドはシェルプロセスの現在のファイルモード作成マスクを標準出力に出力します。-S (--symbolic) オプションで出力の形式を指定できます。出力はオペランドとして再利用可能な形式になっています。

オペランドが与えられているとき、umask コマンドはシェルプロセスのファイルモード作成マスクを与えられたオペランドの値に設定します。

オプション

-S
--symbolic

このオプションが指定されているときは、記号形式でファイルモード作成マスクを出力します。このオプションが指定されていないときは、数値形式で出力します。

オペランド

マスク

このオペランドが与えられているときは、umask コマンドはファイルモード作成マスクをこの値に設定します。値は以下に述べる数値形式と記号形式のどちらかで与えます。

数値形式

数値形式は 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 オプションを指定しなかった場合の出力形式が必ずしも数値形式であるとは規定していません。