こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

mask&0777

質問があるのですがよろしくお願いします。

http://www.futomi.com/cgi-bin/lecture/perl5ref.cgi?MODE=DISP&FUNC=mkdir

このページの最初の方に、
「MASK は 0777 となります。」
という記述がありますが、
MASKとは一体なんなのでしょうか??
0777という数値も、パーミッションは3桁なので、パーミッションではないのでしょうし、よく分かりません。

色々検索してみたのですが、mask&0777という表現をよく見かけるだけで、理解するまでには至りませんでした。

「mask」や「0777」 が何を意味しているのか、
詳しい方がいらっしゃったらご教授頂けると幸いです。
よろしくお願いします。

投稿日時 - 2007-06-13 19:55:08

QNo.3081987

困ってます

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

基本的には「ファイル (やディレクトリ) を作るときのパーミッション」です.
0777 は (0 が先頭にあるので) 8進数ですね. これを 2進数で書いて先頭から (それぞれユーザ/グループ/アザーの) rwx に対応させてください.
実際にはパーミッションはこれだけでは決まりませんが.
mask & 0777 というのは, 「下位 9ビットを残してあとは全部捨てる」という意味です. パーミッションは 9ビットですから.

投稿日時 - 2007-06-13 20:38:14

お礼

回答ありがとうございます。
お礼がとても遅れてすいません。
参考にさせて頂きました。ありがとうございました。

投稿日時 - 2007-09-26 03:03:59

あなたにオススメの質問