日々精進

新しく学んだことを書き留めていきます

nodeでHOMEディレクトリのパスを取得する

logs4jsを使ってログを出力しているが、ログの出力先を~/logs/app.logのように指定しても出力できなかった。
以下のようにすると出力できた。

log4js.configure({
  appenders: [{
    "type": "dateFile",
    "filename": "#{process.env["HOME"]}/logs/#{executingFileName}.log",
    "pattern": "-yyyy-MM-dd"
  }]
})

Windows環境でも動かすなら以下を使う。

process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME']

参考:filesystems - Node.js - Find home directory in platform agnostic way - Stack Overflow