function stat
Jump to headingstat(): voidAsynchronous stat(2). The callback gets two arguments (err, stats) wherestats is an fs.Stats object.
In case of an error, the err.code will be one of Common System Errors.
stat follows symbolic links. Use lstat to look at the links themselves.
Using fs.stat() to check for the existence of a file before callingfs.open(), fs.readFile(), or fs.writeFile() is not recommended.
Instead, user code should open/read/write the file directly and handle the
error raised if the file is not available.
To check if a file exists without manipulating it afterwards, access is recommended.
For example, given the following directory structure:
- txtDir
-- file.txt
- app.js
The next program will check for the stats of the given paths:
import { stat } from 'node:fs';
const pathsToCheck = ['./txtDir', './txtDir/file.txt'];
for (let i = 0; i < pathsToCheck.length; i++) {
stat(pathsToCheck[i], (err, stats) => {
console.log(stats.isDirectory());
console.log(stats);
});
}
The resulting output will resemble:
true
Stats {
dev: 16777220,
mode: 16877,
nlink: 3,
uid: 501,
gid: 20,
rdev: 0,
blksize: 4096,
ino: 14214262,
size: 96,
blocks: 0,
atimeMs: 1561174653071.963,
mtimeMs: 1561174614583.3518,
ctimeMs: 1561174626623.5366,
birthtimeMs: 1561174126937.2893,
atime: 2019-06-22T03:37:33.072Z,
mtime: 2019-06-22T03:36:54.583Z,
ctime: 2019-06-22T03:37:06.624Z,
birthtime: 2019-06-22T03:28:46.937Z
}
false
Stats {
dev: 16777220,
mode: 33188,
nlink: 1,
uid: 501,
gid: 20,
rdev: 0,
blksize: 4096,
ino: 14214074,
size: 8,
blocks: 8,
atimeMs: 1561174616618.8555,
mtimeMs: 1561174614584,
ctimeMs: 1561174614583.8145,
birthtimeMs: 1561174007710.7478,
atime: 2019-06-22T03:36:56.619Z,
mtime: 2019-06-22T03:36:54.584Z,
ctime: 2019-06-22T03:36:54.584Z,
birthtime: 2019-06-22T03:26:47.711Z
}
Parameters Jump to heading
Jump to headingpath: PathLikeJump to headingcallback: (err: ErrnoException | null,stats: Stats,) => voidReturn Type Jump to heading
voidJump to headingstat(path: PathLike,options: (StatOptions & { bigint?: false | undefined; }) | undefined,callback: (err: ErrnoException | null,stats: Stats,) => void,): voidParameters Jump to heading
Jump to headingpath: PathLikeJump to headingoptions: (StatOptions & { bigint?: false | undefined; }) | undefinedJump to headingcallback: (err: ErrnoException | null,stats: Stats,) => voidReturn Type Jump to heading
voidJump to headingstat(path: PathLike,options: StatOptions & { bigint: true; },callback: (err: ErrnoException | null,stats: BigIntStats,) => void,): voidParameters Jump to heading
Jump to headingpath: PathLikeJump to headingoptions: StatOptions & { bigint: true; }Jump to headingcallback: (err: ErrnoException | null,stats: BigIntStats,) => voidReturn Type Jump to heading
voidJump to headingstat(path: PathLike,options: StatOptions | undefined,callback: (err: ErrnoException | null,stats: Stats | BigIntStats,) => void,): voidParameters Jump to heading
Jump to headingpath: PathLikeJump to headingoptions: StatOptions | undefinedJump to headingcallback: (err: ErrnoException | null,stats: Stats | BigIntStats,) => voidReturn Type Jump to heading
void