Related Articles

Related Articles

Node.js fs.filehandle.chmod() Method
  • Last Updated : 14 Jul, 2020

The fs.filehandle.chmod() method is an inbuilt application programming interface of class fs.filehandle within File System module which is used to change the the permission of the particular file.

Syntax:

const filehandle.chmod( mode )

Parameter: This method accepts single parameter mode that holds the integer value.

Return Value: This method returns a pending promise which contain no value in it.

Below programs illustrates the use of fs.filehandle.chmod() method.



Example 1: Filename: index.js

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the 
// fs.filehandle.chmod() method
const fs = require('fs');
const fsPromises = fs.promises;
  
console.log("content of file beofre "
        + "operation :- " +
        (fs.readFileSync('example.txt')));
  
// Initiating asyncrionise function
async function funct() {
  
    // Initializng filehandle
    let filehandle = null;
  
    try {
  
        // Creating and initiating filehandle
        filehandle = await fsPromises
                .open('example.txt', 'r+');
  
        // Modyifying the file permission
        // by using chmod() method
        const prom = filehandle.chmod(1);
  
    } finally {
  
        if (filehandle) {
  
            // Close the file if it is opened.
            console.log("permission is changed"
                        + " to read only");
  
            console.log("content of file beofre"
                    + " operation :- " +
                (fs.readFileSync('example.txt')));
  
            await filehandle.close();
        }
    }
}
  
funct().catch(console.error);

chevron_right


Directory structure before running the program:

Directory structure after running the program:

Run index.js file using the following command:

node index.js

Output:

content of file before operation :- Content of example.txt file
permission is changed to read only
content of file after operation :- Content of example.txt file

Example 2: Filename: index.js

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the 
// fs.filehandle.chmod() method
const fs = require('fs');
const fsPromises = fs.promises;
  
// data for the new file
let data = "This is a file containing"
        + " a collection of books.";
  
// Name of the file to be created
let file = "books.txt";
  
// Creating the new file 'books.txt'
fs.writeFile(file, data, (err) => {
  
    // Cathing error
    if (err) {
        console.log(err);
    }
});
  
// Using fs.exists() method 
fs.exists(file, (exists) => {
    if (exists) {
        console.log("content of file "
            + "before operation :- " +
            (fs.readFileSync(file)));
    }
});
  
// Initiating asyncrionise function
async function funct() {
  
    // Initializng filehandle
    let filehandle = null;
  
    try {
  
        // Creating and initiating  filehandle
        filehandle = await fsPromises.open(file, 'r+');
  
        // Modyifying the file permission
        // by using chmod() method
        const prom = filehandle.chmod(1);
  
    } finally {
  
        if (filehandle) {
  
            // Close the file if it is opened.
            console.log("permission is "
                + "changed to read only");
                  
            console.log("content of file"
                + "after operation :- " +
                (fs.readFileSync(file)));
  
            await filehandle.close();
        }
    }
}
  
funct().catch(console.error);

chevron_right


Directory structure before running the program:

Directory structure after running the program:

Run index.js file using the following command:

node index.js

Output:

content of file before operation :- This is a file containing a collection of books.
permission is changed to read only
content of file after operation :- This is a file containing a collection of books.

Reference: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_filehandle_chmod_mode




My Personal Notes arrow_drop_up
Recommended Articles
Page :