node package manager
Loosely couple your services. Use Orgs to version and reuse your code. Create a free org »



Lightweight module for UNIX Symbolic notation "rwxrwxr--" to Octal notation "774" convertion. Build Status


npm install ugofornode

Features List

- toOctal from Symbolic notation to Octal notation
- toSymbolic from Octal notation to Symbolic notation
- getPermissionByClass return the Symbolic notation for a class (User, Group, Other)
- isSymbolicValid check Symbolic notation validity
- isOctalValid check the Octal notation validity

Usage Example

    var UGOforNODE  = require('../UGOforNODE.js')
        , ugo  = new UGOforNODE();
    // Get Octal notation from Array 
    permission1 = ugo.toOctal( ["rwx", "rwx", "r--"]; // 774 
    // Get Octal notation from String 
    permission2 = ugo.toOctal( "rwxrwxr--" ); // 774 
    // Get Symbolic notation (Array) from Octal 
    permission3 = ugo.toSymbolic( 774 ); // ["rwx","rwx","r--"] 
    // Get Symbolic notation (String) from Octal 
    permission4 = ugo.toSymbolic( 774, "string" ); // "rwxrwxr--" 
    // Get Symbolic notation of the specified class from Octal Notation  
    permission5 = ugo.getPermissionByClass( 774, 'OTHER' ); // "r--" 
    // Get Symbolic notation of the specified class from Symbolic Notation (Array) 
    permission6 = ugo.getPermissionByClass( ["rwx","rwx","r--"], 'OTHER' ); // "r--" 
    // Validate Symbolic notation (Array) 
    permission7 = ugo.isSymbolicValid( ["rwx","rwx","r--"] ); // true; 
    // Validate Symbolic notation (String) 
    permission8 = ugo.isSymbolicValid( "rwxrwxr--" ); // true; 
    // Validate Octal notation 
    permission9 = ugo.isOctalValid( 555 ); // true; 


UGOforNODE was created as part of a custom node development initiative sponsored by Bureaucloud ( & Bluedge( for a private application. This simple and lean module quickly became so convenient for addressing permissions, we decided to share it with others.