Node umask設定

Nodejs umask設定方式,可以直接用process.umask來設定

P.S. 如果不懂umask在做什麼,可以參考鳥哥的文章
http://linux.vbird.org/linux_basic/0220filemanager.php#umask



var express = require('express'),
    socket_path = '/tmp/express_node.sock',
    fs = require('fs'),

 
   // 設定新的umask,並且return舊的umask的設定值到oldUmask
  // 我的系統的umask原本是0002 然後改成0000
    oldUmask = process.umask(0000);

var app = express();

app.get('/', function (req, res) {
    res.send('Hello from Worker ');
});

app.listen(socket_path).on('listening',function(){
    // 這邊檔案的權限會是  -rw-rw-rw-
    fs.writeFile('/tmp/test1.txt', 'Hello', function(err){
        if(err) throw err;
        console.log('it saved');
    });

    process.umask(oldUmask); // 重新回復umask

    function testx(){
        var fs = require('fs');
         // 這邊檔案的權限會是  -rw-rw-r--
        fs.writeFile('/tmp/test2.txt', 'Hello', function(err){
            if(err) throw err;
            console.log('it saved');
        });
    }

    process.nextTick(testx);
});



張貼留言

這個網誌中的熱門文章

Unions 在C語言的簡單介紹

解釋scope.$apply用來做什麼? -- AngularJS

JavaScript的Timer用法