S-JIS[2003-09-20/2006-05-27] 変更履歴

umask 〔マスク〕

初期パーミッションを指定するUNIXコマンド


概要

現在のユーザーがファイルやディレクトリを作る際の、初期パーミッションの為のマスクを指定する。

ファイル作成時のデフォルトパーミッションは666、ディレクトリは777であり、この数値と「umaskで指定されたマスクの論理否定」との論理積が、ファイルやディレクトリ作成時の最終的なパーミッションとなる。

パーミッション = デフォルト値 & ~umask; C言語

マスクはchmodと同じように、3桁の八進数での指定文字列での指定が出来る。

設定したマスクは、それ以降にファイルやディレクトリを作成したときに有効となる。
マスク設定以前に実行開始していたプロセスには影響ない。[2006-05-27]
そもそも同一ユーザーであっても、別シェルから実行していれば別のumaskが指定できるんだし…。


現在値表示

マスクを指定しないと、現在のマスクが表示される。

$ umask
022

数値指定

八進数で指定する場合は、「許可しない権限」にビットを立てる。

$ umask 023
$ umask
023

文字列指定

文字列で指定する場合は、chmodと同じように権限を指定する。

$ umask o-x
$ umask
023
$ umask o+x
$ umask
022
$ umask u=rwx
$ umask go=rx
$ umask
022

UNIXコマンドへ戻る
メールの送信先:ひしだま