The fs.filehandle.chown() method is an inbuilt application programming interface of class fs.filehandle within File System module which is used to change the ownership of the particular file.
Syntax:
const filehandle.chown(uid, gid)
Parameter: This method accept two parameters as mentioned above and described below:
- uid:: It represent the user id.
- gid: It represent group identifiers.
Return Value: This method returns a pending promise that contain no value in it.
Below programs illustrates the use of fs.filehandle.chown() method.
Example 1: Filename: index.js
// Node.js program to demonstrate the // filehandle.chown() method const fs = require( 'fs' );
const fsPromises = fs.promises; console.log( "content of file before operation :- "
+ (fs.readFileSync( 'example.txt' )));
// Initiating asynchronise function async function funct() {
// Initializing filehandle
let filehandle = null ;
try {
// Creating and initiating filehandle
filehandle = await
fsPromises.open( 'example.txt' , 'r+' );
// Modifying the file ownership
// by using chown() method
const prom = filehandle.chown(1, 1);
} finally {
if (filehandle) {
// Close the file if it is opened.
console.log( "ownership is changed"
+ " successfully" );
console.log( "content of file after"
+ " operation :- " +
(fs.readFileSync( 'example.txt' )));
await filehandle.close();
}
}
} funct(). catch (console.error);
|
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 ownership is changed successfully content of file after operation :- Content of example.txt file
Example 2: Filename: index.js
// Node.js program to demonstrate the // filehandle.chown() 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) => { // Catching 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 asynchronise function async function funct() {
// Initializing filehandle
let filehandle = null ;
try {
// Creating and initiating
// filehandle
filehandle = await
fsPromises.open(file, 'r+' );
// Modifying the file ownership
// by using chown() method
const prom = filehandle.chown(1, 1);
} finally {
if (filehandle) {
// Close the file if it is opened.
console.log( "ownership is changed" );
console.log( "content of file "
+ "after operation :- " +
(fs.readFileSync(file)));
await filehandle.close();
}
}
} funct(). catch (console.error);
|
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. ownership is changed 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_chown_uid_gid