julia如何知道要使用什么路径分隔符和根目录?

julia如何知道要使用什么路径分隔符和根目录?,julia,Julia,像joinpath这样的函数在连接两个路径时使用适当的操作系统相关分隔符(例如Linux上的/,Windows上的\\等)。这些函数如何知道使用什么分隔符 同样,Linux上的根目录是/,而Windows上的根目录可能是C:\\。有没有办法在Julia中检索依赖操作系统的根目录 注意,我已经查看了joinpath,它似乎使用了一个未记录的函数pathsep(a,b)和一个全局变量path\u separator\re,但是我看不出这两个函数是如何工作的。它使用Sys.isunix和Sys.isw

joinpath
这样的函数在连接两个路径时使用适当的操作系统相关分隔符(例如Linux上的
/
,Windows上的
\\
等)。这些函数如何知道使用什么分隔符

同样,Linux上的根目录是
/
,而Windows上的根目录可能是
C:\\
。有没有办法在Julia中检索依赖操作系统的根目录


注意,我已经查看了
joinpath
,它似乎使用了一个未记录的函数
pathsep(a,b)
和一个全局变量
path\u separator\re
,但是我看不出这两个函数是如何工作的。

它使用
Sys.isunix
Sys.iswindows
函数,以便有条件地定义正确的
路径分隔符
变量等


if Sys.isunix()
# ...
常量路径\u分隔符\u re=r“/”
# ...
拆分驱动器(路径::字符串)=(“”,路径)
elseif Sys.iswindows()
# ...
常量路径分隔符\u re=r“[/\\]+”
# ...
函数splitdrive(路径::字符串)
m=匹配(r“^([^\\]+:\\\\\[^\]+\\[^\]+\\\\\\\\\\\\\\\\\\\\\\[^\\\]+\\\\\\\\\\[^\\\\]+:\\\\\\\\\[^\\\\\\]+:\\\\\\)(.$”,路径)
字符串(m.captures[1]),字符串(m.captures[2])
结束
其他的
错误(“需要定义此操作系统的路径原语”)
结束

对于根目录,请查看
homedir
函数,该函数使用
libuv
确定它

帮助?>homedir 搜索:homedir

homedir()->AbstractString
返回当前用户的主目录

|注 | |homedir通过
libuv
uv\u os\u homedir
确定主目录。有关详细信息(例如,有关如何指定住宅的信息) |目录(通过环境变量),请参阅
uv\u os\u homedir
文档


非常有趣的答案。非常感谢。