It still works. This is what I have done. Created two folders

/home/anand/testing/dirpath - the npm module

/home/anand/testing/pathtest - test folder

dirpath has the following files

index.js

exports.path = __dirname;

and

package.json

{
  "name": "dirpath",
  "version": "0.0.1",
  "private": true,
"main": "index.js",
  "dependencies": {
  },
  "engines": {
    "node": "v0.6.x"
  }
}

run npm link in dirpath so that the module is available globally

pathtest has one file app.js

var dirpath = require('dirpath');

console.log(dirpath.path);

Make dirpath module available in current directory using npm link dirpath

Next run app.js and the console logs

/home/anand/node/Testing/dirpath


On Sun, May 27, 2012 at 8:07 AM, Alan Hoffmeister <alanhoffmeis...@gmail.com
> wrote:

> Yep, you understood, but what if i need to know the root path from a
> required() module that is somewhere eles on the system?
>
> --
> Att,
> Alan Hoffmeister
>
>
> 2012/5/26 Anand George <mranandgeo...@gmail.com>
>
>> Not sure if I understood your question right.
>>
>> console.log(__dirname) in app.js which is in the path /home/myuser/app.js
>> will return /home/myuser.
>>
>> Isn't this what you intend.
>>
>> On Sun, May 27, 2012 at 7:53 AM, Alan Hoffmeister <
>> alanhoffmeis...@gmail.com> wrote:
>>
>>> __dirname return the path of the script that is calling it, not the app
>>> root path...
>>> --
>>> Att,
>>> Alan Hoffmeister
>>>
>>>
>>>
>>> 2012/5/26 Anand George <mranandgeo...@gmail.com>
>>>
>>>> If you need to find the app path couldn't you just use __dirname.
>>>>
>>>>
>>>> On Sun, May 27, 2012 at 7:08 AM, Alan Hoffmeister <
>>>> alanhoffmeis...@gmail.com> wrote:
>>>>
>>>>> I think that I got the answer:
>>>>>
>>>>> //mymodyle.js
>>>>> path = require('path');
>>>>> exports.path = path.dirname(process.mainModule.filename);
>>>>>
>>>>> Can I trust on the information passed by process.mainModule.filename?
>>>>>
>>>>> --
>>>>> Att,
>>>>> Alan Hoffmeister
>>>>>
>>>>>
>>>>>
>>>>> 2012/5/26 Alan Hoffmeister <alanhoffmeis...@gmail.com>
>>>>>
>>>>>> @mscdex Thanks, but what if the parent is inside a folder on the main
>>>>>> path? It would return /home/myuser/somefolder instead of /home/mysuser.
>>>>>>
>>>>>> --
>>>>>> Att,
>>>>>> Alan Hoffmeister
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2012/5/26 mscdex <msc...@gmail.com>
>>>>>>
>>>>>>> On May 26, 9:13 pm, Alan Hoffmeister <alanhoffmeis...@gmail.com>
>>>>>>> wrote:
>>>>>>> > How can I get the main path of the app?
>>>>>>>
>>>>>>> // module
>>>>>>> var path = require('path');
>>>>>>>
>>>>>>> exports.path = function() {
>>>>>>>  return path.dirname(module.parent.filename);
>>>>>>> };
>>>>>>>
>>>>>>> --
>>>>>>> Job Board: http://jobs.nodejs.org/
>>>>>>> Posting guidelines:
>>>>>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "nodejs" group.
>>>>>>> To post to this group, send email to nodejs@googlegroups.com
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> nodejs+unsubscr...@googlegroups.com
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>>>>>>
>>>>>>
>>>>>>
>>>>>  --
>>>>> Job Board: http://jobs.nodejs.org/
>>>>> Posting guidelines:
>>>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "nodejs" group.
>>>>> To post to this group, send email to nodejs@googlegroups.com
>>>>> To unsubscribe from this group, send email to
>>>>> nodejs+unsubscr...@googlegroups.com
>>>>> For more options, visit this group at
>>>>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>>>>
>>>>
>>>>  --
>>>> Job Board: http://jobs.nodejs.org/
>>>> Posting guidelines:
>>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>>>> You received this message because you are subscribed to the Google
>>>> Groups "nodejs" group.
>>>> To post to this group, send email to nodejs@googlegroups.com
>>>> To unsubscribe from this group, send email to
>>>> nodejs+unsubscr...@googlegroups.com
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>>>
>>>
>>>  --
>>> Job Board: http://jobs.nodejs.org/
>>> Posting guidelines:
>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>>> You received this message because you are subscribed to the Google
>>> Groups "nodejs" group.
>>> To post to this group, send email to nodejs@googlegroups.com
>>> To unsubscribe from this group, send email to
>>> nodejs+unsubscr...@googlegroups.com
>>> For more options, visit this group at
>>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>>
>>
>>  --
>> Job Board: http://jobs.nodejs.org/
>> Posting guidelines:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> You received this message because you are subscribed to the Google
>> Groups "nodejs" group.
>> To post to this group, send email to nodejs@googlegroups.com
>> To unsubscribe from this group, send email to
>> nodejs+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>
>
>  --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to nodejs@googlegroups.com
> To unsubscribe from this group, send email to
> nodejs+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to