Hello,

sorry for not being clear enough.

My problem is represented with the following code, running on OSX:

mkdir ~/test
ln -s ~/test ~/testlink
touch ~/test/foo
Rscript -e 'Sys.readlink(c("~/test/foo", "~/testlink/foo")); 
normalizePath(c("~/test/foo","~/testlink/foo"))'

I expected `Sys.readlink` to show the same output as `normalizePath`.
Also, I think the readlink.h imported to R to be the same as from the system's 
`readlink` command, thus mimicking the command line difference.

Am I wrong with the latter? Anyway, the behaviour is irritating, thus the 
request to at least mention `normalizePath` in the Rd of `Sys.readlink`.

Best,
Sven


> On 29 Feb 2016, at 11:44, Mikko Korpela <mikko.korp...@aalto.fi> wrote:
> 
> On 29.02.2016 10:34, Sven E. Templer wrote:
>> Hello together,
>> 
>> the function `Sys.readlink` uses the system's readlink command to resolve 
>> symlink paths. On OSX/BSD the command has a different meaning than on Linux 
>> [1].
>> 
>> There exists the tool 'realpath', which seems suitable for the task, at 
>> least applied at the command line level [2]. It is used in `normalizePath`.
>> 
>> I suggest (at least the latter) to
>> * use realpath instead readlink within Sys.readlink (do_readlink -> 
>> do_normalizepath)
>> * link to `normalizePath` in the Rd document, eventually mentioning the 
>> difference
>> 
>> Many thanks,
>> Sven
>> 
>> [1] see
>> https://www.freebsd.org/cgi/man.cgi?query=readlink
>> vs
>> http://linux.die.net/man/1/readlink
>> 
>> [2]
>> https://www.freebsd.org/cgi/man.cgi?query=realpath
>> http://linux.die.net/man/1/realpath
> 
> What do you mean by "different meaning"? How are the command line tools
> [1] relevant when R is using the C function 'readlink'?
> 
> http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html
> https://www.freebsd.org/cgi/man.cgi?query=readlink&sektion=2
> http://man7.org/linux/man-pages/man2/readlink.2.html
> 
> -- 
> Mikko Korpela
> Aalto University School of Science
> Department of Computer Science

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to