Reputation: 1
When ever I try to open a file I get,
events.js:72
throw er; // Unhandled 'error' event
Error: EISDIR, read
Upvotes: 61
Views: 86697
Reputation: 11
You can see it in node.js official documentation.
import { readFile } from 'node:fs';
// macOS, Linux, and Windows
readFile('<directory>', (err, data) => {
// => [Error: EISDIR: illegal operation on a directory, read <directory>]
});
// FreeBSD
readFile('<directory>', (err, data) => {
// => null, <data>
});
Upvotes: 1
Reputation: 2436
You might get lucky checking for such error codes by running something like:
grep EISDIR -r /usr/include
When I do this, I get a line that says:
/usr/include/uv.h: XX(EISDIR, "illegal operation on a directory")
Upvotes: 1
Reputation: 4597
EISDIR
error occurs when you try to open a file, but the path given is a directory.
You can fix this by checking if is it directory-
if (fs.lstatSync(filePath).isDirectory()) {
return;
}
For more reference see docs here.
Upvotes: 16
Reputation: 779
Just came across this error and in my case it was due having used bower link
previously to link to local sources which then creates a symlink in the directory.
Once I've bower unlink
ed all the components, it worked again as expected.
Hope this might help someone.
Upvotes: 4
Reputation: 1
This error is simple,
cd /tmp
mkdir dir
node -e "var fs = require('fs'); fs.createReadStream( 'dir' );"
EISDIR means that the target of the operation is a directory in reality but that the expected filetype of the target is something other than a directory.
Upvotes: 97