Expanding / Resolving ~ in node.js

node.js, path

Solution

As QZ Support noted, you can use `process.env.HOME` on OSX/Linux. Here's a simple function with no dependencies.

const path = require('path');
function resolveHome(filepath) {
    if (filepath[0] === '~') {
        return path.join(process.env.HOME, filepath.slice(1));
    }
    return filepath;
}

Problem

I am new to nodejs. Can node resolve ~ (unix home directory) example ~foo, ~bar to /home/foo, /home/bar ``` > path.normalize('~mvaidya') '~mvaidya' > path.resolve('~mvaidya') '/home/mvaidya/~mvaidya' > ``` This response is wrong; I am hoping that ~mvaidya must resolve to /home/mvaidya

Original source