Engee 文档

文件系统

read(filename::AbstractString)

将文件的全部内容读取为'Vector{UInt8}`.

read(filename::AbstractString, String)

以字符串的形式读取文件的全部内容。

read(filename::AbstractString, args...)

打开文件并读取其内容。 'args’传递给’read':这相当于'open(io->read(io,args...),文件名)'。

write(filename::AbstractString, content)

将"内容"的规范二进制表示形式写入将创建的文件,如果该文件不存在,或以其他方式复盖该文件。

返回写入文件的字节数。

pwd() -> String

返回当前工作目录。

另请参阅说明 'cd', 'tempdir'

例子

julia> pwd()
"/home/JuliaUser"

julia> cd("/home/JuliaUser/Projects/julia")

julia> pwd()
"/home/JuliaUser/Projects/julia"
cd(dir::AbstractString=homedir())

设置当前工作目录。

另请参阅说明 "残疾人士", 'mkdir', 'mkpath', 'mktempdir'

例子

julia> cd("/home/JuliaUser/Projects/julia")

julia> pwd()
"/home/JuliaUser/Projects/julia"

julia> cd()

julia> pwd()
"/home/JuliaUser"
cd(f::Function, dir::AbstractString=homedir())

暂时将当前工作目录更改为’dir`,应用’f’函数,并返回到源目录。

例子

julia> pwd()
"/home/JuliaUser"

julia> cd(readdir, "/home/JuliaUser/Projects/julia")
34-element Array{String,1}:
 ".circleci"
 ".freebsdci.sh"
 ".git"
 ".gitattributes"
 ".github"
 ⋮
 "test"
 "ui"
 "usr"
 "usr-staging"

julia> pwd()
"/home/JuliaUser"
readdir(dir::AbstractString=pwd();
    join::Bool = false,
    sort::Bool = true,
) -> Vector{String}

如果未指定,则返回`dir`目录或当前工作目录中的名称。 如果’join’设置为false,'readdir’只返回目录中原始形式的名称;如果’join’设置为true,则为每个`name`返回`joinpath(dir,name)',因此返回的字符串是完整路径。 要再次获取绝对路径,请调用’readdir',绝对目录路径和’join’设置为true。

默认情况下,'readdir’对返回的名称列表进行排序。 要跳过排序名称并按照它们在文件系统中列出的顺序获取它们,可以使用`readdir(dir,sort=false)`。

另请参阅说明 'walkdir'

兼容性:Julia1.4

命名参数’join’和`sort’需要至少1.4的Julia版本。

例子

julia> cd("/home/JuliaUser/dev/julia")

julia> readdir()
30-element Array{String,1}:
 ".appveyor.yml"
 ".git"
 ".gitattributes"
 ⋮
 "ui"
 "usr"
 "usr-staging"

julia> readdir(join=true)
30-element Array{String,1}:
 "/home/JuliaUser/dev/julia/.appveyor.yml"
 "/home/JuliaUser/dev/julia/.git"
 "/home/JuliaUser/dev/julia/.gitattributes"
 ⋮
 "/home/JuliaUser/dev/julia/ui"
 "/home/JuliaUser/dev/julia/usr"
 "/home/JuliaUser/dev/julia/usr-staging"

julia> readdir("base")
145-element Array{String,1}:
 ".gitignore"
 "Base.jl"
 "Enums.jl"
 ⋮
 "version_git.sh"
 "views.jl"
 "weakkeydict.jl"

julia> readdir("base", join=true)
145-element Array{String,1}:
 "base/.gitignore"
 "base/Base.jl"
 "base/Enums.jl"
 ⋮
 "base/version_git.sh"
 "base/views.jl"
 "base/weakkeydict.jl"

julia> readdir(abspath("base"), join=true)
145-element Array{String,1}:
 "/home/JuliaUser/dev/julia/base/.gitignore"
 "/home/JuliaUser/dev/julia/base/Base.jl"
 "/home/JuliaUser/dev/julia/base/Enums.jl"
 ⋮
 "/home/JuliaUser/dev/julia/base/version_git.sh"
 "/home/JuliaUser/dev/julia/base/views.jl"
 "/home/JuliaUser/dev/julia/base/weakkeydict.jl"
walkdir(dir; topdown=true, follow_symlinks=false, onerror=throw)

返回遍历目录树的迭代器。 迭代器返回一个包含`(rootpath,dirs,files)`的元组。 目录树可以从上到下或从下到上遍历。 如果’walkdir’或’stat’检测到’IOError',则将重新输出默认错误。 用户错误处理函数可以使用命名的’onerror`参数提供。 'onerror’被称为`IOError’作为参数。

另请参阅说明 'readdir'

例子

for (root, dirs, files) in walkdir(".")
    println("Directories in $root")
    for dir in dirs
        println(joinpath(root, dir)) # путь к каталогам
    end
    println("Files in $root")
    for file in files
        println(joinpath(root, file)) # путь к файлам
    end
end
julia> mkpath("my/test/dir");

julia> itr = walkdir("my");

julia> (root, dirs, files) = first(itr)
("my", ["test"], String[])

julia> (root, dirs, files) = first(itr)
("my/test", ["dir"], String[])

julia> (root, dirs, files) = first(itr)
("my/test/dir", String[], String[])
mkdir(path::AbstractString; mode::Unsigned = 0o777)

使用"模式"权限创建名为"路径"的目录。 'Mode’的默认值是'0o777'。 它由当前文件创建掩码更改。 此函数永远不会创建多个目录。 如果目录已经存在或某些中间目录不存在,则此函数返回错误。 有关创建所有必要中间目录的函数的信息,请参阅说明 'mkpath'。 返回"路径"。

例子

julia> mkdir("testingdir")
"testingdir"

julia> cd("testingdir")

julia> pwd()
"/home/JuliaUser/testingdir"
mkpath(path::AbstractString; mode::Unsigned = 0o777)

在"路径"中创建所有必要的中间目录。 目录是使用"模式"权限创建的,该权限的默认值为"0o777",并且可以通过当前文件创建掩码进行修改。 相对于 'mkdir','mkpath`如果’path'(或其部分)已经存在,则不会返回错误。 但是,如果"路径"(或其部分)指向现有文件,则会引发错误。 返回"路径"。

如果’path’包含文件名,您可能希望使用’mkpath(dirname(path))'来避免使用文件名创建目录。

例子

julia> cd(mktempdir())

julia> mkpath("my/test/dir") # создает три каталога
"my/test/dir"

julia> readdir()
1-element Array{String,1}:
 "my"

julia> cd("my")

julia> readdir()
1-element Array{String,1}:
 "test"

julia> readdir("test")
1-element Array{String,1}:
 "dir"

julia>mkpath("intermediate_dir/actually_a_directory。txt")#创建两个目录
"intermediate_dir/actually_a_directory。txt"

julia>isdir("intermediate_dir/actually_a_directory.txt")
真的
hardlink(src::AbstractString, dst::AbstractString)

创建一个指向名为"dst"的现有"src"源文件的硬链接。 目的地’dst’不应该存在。

另请参阅说明 '符号链接'

兼容性:Julia1.8

这种方法是在Julia1.8中加入的。

symlink(target::AbstractString, link::AbstractString; dir_target = false)

创建一个符号链接到一个名为"链接"的"目标"。

在Windows中,符号链接必须显式声明为指向目录或不指向目录。 如果"目标"已经存在,则默认情况下会自动确定"链接"类型。 但是,如果’target’不存在,则此函数将默认创建指向文件的符号链接,除非’dir_target`设置为’true'。 请注意,如果用户设置了`dir_target`,但`target`存在并且是一个文件,则仍然会创建指向该目录的符号链接,但其取消引用将失败,就像用户创建了指向该文件的符号

此外,还有两种方法可以在Windows中创建链接:符号链接和连接点。 连接点的效率稍高,但不支持相对路径,因此如果请求指向目录的相对符号链接(如使用返回"false"的`isabspath(target)`所示),将使用符号链接;否则,将使用连接点。 建议仅在创建它们指向的文件或目录后才在Windows中创建符号链接。

另请参阅说明 '硬链接'

此功能会在不支持软符号链接的操作系统(如Windows XP)上导致错误。

兼容性:Julia1.6

在Julia1.6中添加了命名参数’dir_target'。 在此之前,指向Windows中不存在路径的符号链接始终是文件符号链接,不支持指向目录的相对符号链接。

readlink(path::AbstractString) -> String

返回符号链接’path’指向的目标位置。

chmod(path::AbstractString, mode::Integer; recursive::Bool=false)

将权限模式"路径"更改为"模式"。 目前,仅支持整数"模式"(例如,"0o777")。 . 如果’recursive=true’并且路径是一个目录,则该目录中的所有权限将以递归方式更改。 返回"路径"。

在Julia1.6之前,在Windows中无法正确使用文件系统Acl,因此在文件中设置了只读位。 现在可以管理ACL列表。

chown(path::AbstractString, owner::Integer, group::Integer=-1)

将所有者和/或组"路径"更改为"所有者"和/或"组"。 如果为"所有者"或"组`输入值"-1",则相应的标识符不会更改。 目前,只支持整数"所有者"和"组"。 返回"路径"。

RawFD

包装操作系统自己的文件描述符的基元类型。 `RawFD’可以传递给方法,例如 'stat',用于检测有关基本文件的信息,并且还可用于打开带有描述支持流的OS文件的`RawFD`的流。

stat(file)

返回一个结构,其字段包含有关文件的信息。 下面列出了结构字段。

姓名 类型 资料描述

desc

'联盟{String, Base.OS_HANDLE}`

OS文件路径或描述符

大小

`Int64'

文件大小(以字节为单位)

设备

'UInt`

包含文件的设备的ID

inode,inode

'UInt`

文件的索引描述符的编号

模式

'UInt`

文件保护模式

n链接

`Int'

每个文件的硬链接数

uid

'UInt`

用户的ID-文件的所有者

吉德

'UInt`

文件所有者组的ID

rdev,rdev

'UInt`

如果此文件链接到设备,则它链接到的设备的ID为

大厦尺寸

`Int64'

文件的首选文件系统块大小

街区

`Int64'

分配的512字节块的数量

m时间

'漂浮64`

Unix时间戳,指示上次修改文件的时间

时间

'漂浮64`

Unix时间戳,指示更改文件元数据的时间

diskstat(path=pwd())

返回有关包含"path"所指向的文件或目录的磁盘的统计信息(以字节为单位)。 如果没有传递参数,则返回有关包含当前工作目录的磁盘的统计信息。

兼容性:Julia1.8

这种方法是在Julia1.8中加入的。

lstat(file)

同样地 'stat',但对于符号链接,获取链接本身的信息,而不是它指向的文件。 应该为文件路径而不是文件对象或文件描述符调用此函数。

ctime(file)

相当于’stat(文件)。ctime'。

mtime(file)

相当于’stat(文件)。mtime'。

filemode(file)

相当于’stat(文件)。模式'。

filesize(path...)

相当于’stat(文件)。尺寸'。

uperm(file)

以位字段的形式返回文件所有者的权限

意义 资料描述

01

执行权限

02

写权限

04

读取权限

有关可接受参数的列表,请参阅说明 '统计'

gperm(file)

同样地 'uperm',但返回拥有该文件的组的权限。

operm(file)

同样地 'uperm',但返回非文件所有者且不属于拥有该文件的组的用户的权限。

cp(src::AbstractString, dst::AbstractString; force::Bool=false, follow_symlinks::Bool=false)

将文件、链接或目录从"src"复制到"dst"。 使用’force=true`,现有的`dst’将首先被删除。

如果’follow_symlinks=false’和’src’是符号链接,`dst’将被创建为符号链接。 如果’follow_symlinks=true’和’src’是符号链接,'dst’将是’src’指向的文件或目录的副本。 返回’dst'。

'Cp’功能与`cp`命令不同。 'Cp’函数始终基于`dst`是文件的假设进行操作,而命令根据`dst`是目录还是文件执行不同的操作。 当使用’force=true`时,当`dst`是一个目录时,位于`dst`目录中的所有内容都将丢失,并且`dst`将成为一个内容为`src’的文件。

download(url::AbstractString, [path::AbstractString = tempname()]) -> path

从指定的URL下载文件并将其保存到"路径"位置,如果未指定,则保存到临时路径。 返回下载文件的路径。

自Julia1.6以来,此功能被认为是过时的,只是"下载"的薄壳。下载`。 在新代码中,您应该直接使用该函数,而不是调用此函数。

mv(src::AbstractString, dst::AbstractString; force::Bool=false)

将文件、链接或目录从"src"移动到"dst"。 使用’force=true`,现有的`dst’将首先被删除。 返回’dst'。

例子

julia> write("hello.txt", "world");

julia> mv("hello.txt", "goodbye.txt")
"goodbye.txt"

julia> "hello.txt" in readdir()
false

julia> readline("goodbye.txt")
"world"

julia> write("hello.txt", "world2");

julia> mv("hello.txt", "goodbye.txt")
ERROR: ArgumentError: 'goodbye.txt' exists. `force=true` is required to remove 'goodbye.txt' before moving.
Stacktrace:
 [1] #checkfor_mv_cp_cptree#10(::Bool, ::Function, ::String, ::String, ::String) at ./file.jl:293
[...]

julia> mv("hello.txt", "goodbye.txt", force=true)
"goodbye.txt"

julia> rm("goodbye.txt");
rm(path::AbstractString; force::Bool=false, recursive::Bool=false)

使用指定路径删除文件、链接或空目录。 如果传递`force=true',则不存在的路径不被视为错误。 如果传递’recursive=true’并且路径是目录,则递归删除所有内容。

例子

julia> mkpath("my/test/dir");

julia> rm("my", recursive=true)

julia> rm("this_file_does_not_exist", force=true)

julia> rm("this_file_does_not_exist")
ERROR: IOError: unlink("this_file_does_not_exist"): no such file or directory (ENOENT)
Stacktrace:
[...]
Base.touch(::Pidfile.LockMonitor)

更新锁的’mtime’以指示它仍然是最新的。

另请参阅[mkpidlock]构造函数中对`refresh`关键字的描述。


touch(path::AbstractString)
touch(fd::File)

根据当前时间更新文件中上次修改的时间戳。

如果该文件不存在,则会创建一个新文件。

返回"路径"。

例子

julia> write("my_little_file", 2);

julia>mtime("my_little_file")
1.5273815391135583e9

julia>touch("my_little_file");

julia>mtime("my_little_file")
1.527381559163435e9

我们看到了 mtime由`touch’功能更改。

tempname(parent=tempdir(); cleanup=true) -> String

创建临时文件的路径。 此函数只返回路径,不创建文件。 该路径可能是唯一的,但由于两个同时调用`tempname`将创建相同文件名的可能性非常低,因此无法保证这一点。 该名称保证与调用"tempname"时已存在的所有文件的名称不同。

当不带参数调用时,临时名称将是"tempdir()"指定的系统临时目录中临时名称的绝对路径。 如果设置了"父"目录参数,则临时路径将位于此目录中。

'Cleanup’参数控制进程是否尝试在完成时自动删除返回的路径。 请注意,'tempname’函数不会在返回的位置创建任何文件或目录,因此只有在那里创建文件或目录后才会执行清理。 如果这样做并且’cleanup’参数设置为’true',则路径将在过程结束时被删除。

兼容性:Julia1.4

参数’parent’和’cleanup’在版本1.4中添加。 在Julia1.4之前,路径`tempname’在进程结束时从未被删除。

如果另一个进程获得相同的文件名并在您之前创建该文件,则可能存在安全漏洞。 如果这种情况值得关注,请使用`JL_O_EXCL’打开文件。 此外,还建议使用 'mktemp(’

tempdir()

返回临时目录的路径。 在Windows中,"tempdir()"使用有序列表中找到的第一个环境变量"TMP","TEMP","USERPROFILE"。 在所有其他操作系统中,tempdir()使用在tmpdir,TMP,TEMP和TEMPDIR的有序列表中找到的第一个环境变量。 如果没有找到,则使用路径`"/tmp"`。

mktemp(parent=tempdir(); cleanup=true) -> (path, io)

返回`(path,io)`,其中`path`是`parent`中新临时文件的路径,`io`是此路径的打开文件的对象。 "清理"参数控制过程结束时自动删除临时文件。

兼容性:Julia1.3

在Julia1.3中添加了名为"cleanup"的参数。 此外,从版本1.3开始,如果没有明确设置"清理"参数值"false",则在Julia过程完成后,用"mktemp"创建的临时路径将被删除。

mktemp(f::Function, parent=tempdir())

将函数`f’应用于结果 `mktemp(parent)'并在完成后删除临时文件。

另请参阅说明 'mktempdir'

mktempdir(parent=tempdir(); prefix="jl_", cleanup=true) -> path

在"父"目录中创建一个临时目录,其名称基于指定的前缀"前缀"和随机后缀,并返回其路径。 此外,在某些平台上,所有结束字符都是 它们可以用`前缀`中的随机字符替换。 如果"父"不存在,则会发生错误。 'Cleanup’参数控制在进程结束时自动删除临时目录。

兼容性:Julia1.2

在Julia1.2中添加了命名的"前缀"参数。

兼容性:Julia1.3

在Julia1.3中添加了名为"cleanup"的参数。 此外,从版本1.3开始,如果没有明确设置"清理"参数值"false",则在Julia过程完成后,使用"mktempdir"创建的临时路径将被删除。

另请参阅说明 'mktemp', 'mkdir'

mktempdir(f::Function, parent=tempdir(); prefix="jl_")

将函数`f’应用于结果 `mktempdir(parent;prefix)'并在完成后删除临时目录及其所有内容。

另请参阅说明 'mktemp', 'mkdir'

兼容性:Julia1.2

在Julia1.2中添加了命名的"前缀"参数。

isblockdev(path) -> Bool

如果`path`是块设备,则返回`true`,否则返回`false'。

ischardev(path) -> Bool

如果`path`是字符设备,则返回`true`,否则返回`false'。

isdir(path) -> Bool

如果`path`是一个目录,则返回`true`,否则返回’false'。

例子

julia> isdir(homedir())
true

julia> isdir("not/a/directory")
false

另请参阅说明 'isfile''ispath'

isfifo(path) -> Bool

如果`path`是FIFO,则返回`true`,否则返回`false'。

isfile(path) -> Bool

如果`path`是常规文件,则返回`true`,否则返回`false'。

例子

julia> isfile(homedir())
false

julia> filename = "test_file.txt";

julia> write(filename, "Hello world!");

julia> isfile(filename)
true

julia> rm(filename);

julia> isfile(filename)
false

另请参阅说明 `isdir''ispath'

islink(path) -> Bool

如果`path`是符号链接,则返回`true`,否则返回`false'。

ismount(path) -> Bool

如果`path`是连接点,则返回`true`,否则返回’false'。

ispath(path) -> Bool

如果路径上存在有效的文件系统对象,则返回"true",否则返回"false"。 这是一个概括 `isfile', 'isdir'等。

issetgid(path) -> Bool

如果setgid标志设置为"path",则返回"true",否则返回"false"。

issetuid(path) -> Bool

如果setuid标志设置为"path",则返回"true",否则返回"false"。

issocket(path) -> Bool

如果`path`是套接字,则返回`true`,否则返回’false'。

issticky(path) -> Bool

如果钉扎位设置为"path",则返回"true",否则返回"false"。

homedir() -> String

返回当前用户的主目录。

'homedir`使用`libuv`中的’uv_os_homedir’定义主目录。 有关详细信息(例如,有关使用环境变量指定主目录的信息),请参阅http://docs.libuv.org/en/v1.x/misc.html#c.uv_os_homedir [`uv_os_homedir’的文档]。

另请参阅说明 'Sys.用户名'

dirname(path::AbstractString) -> String

返回包含文件夹的路径部分。 路径中的结束字符('/'或")被视为路径的一部分。

例子

julia> dirname("/home/myuser")
"/home"

julia> dirname("/home/myuser/")
"/home/myuser"

另请参阅说明 'basename'

basename(path::AbstractString) -> String

返回包含文件名的路径部分。

该函数与Unix程序`basename’略有不同,后者忽略尾随斜杠,即`$basename/foo/bar/返回`bar,而Julia中的`basename`返回空字符串`""'。

例子

julia> basename("/home/myuser/example.jl")
"example.jl"

julia> basename("/home/myuser/")
""

另请参阅说明 'dirname'

isabspath(path::AbstractString) -> Bool

确定路径是否为绝对路径(从根目录开始)。

例子

julia> isabspath("/home")
true

julia> isabspath("home")
false
isdirpath(path::AbstractString) -> Bool

确定路径是否属于目录(例如,以路径分隔符结尾)。

例子

julia> isdirpath("/home")
false

julia> isdirpath("/home/")
true
joinpath(parts::AbstractString...) -> String
joinpath(parts::Vector{AbstractString}) -> String
joinpath(parts::Tuple{AbstractString}) -> String

将路径组件组合成一个完整的路径。 如果任何参数是绝对路径,或者(在Windows中)具有与为组合先前路径而定义的磁盘不匹配的磁盘规范,则会丢弃先前的组件。

请注意,由于Windows中每个磁盘都有一个当前目录`因此’joinpath("c:","foo")'表示相对于c:磁盘上当前目录的路径,因此它看起来像c:foo,而不是c:\foo …​ 此外’joinpath’将其视为非绝对路径,并忽略驱动器号的大小写,因此`joinpath("C:\A","c:b")="C:\A\b"'。

例子

julia> joinpath("/home/myuser", "example.jl")
"/home/myuser/example.jl"
julia> joinpath(["/home/myuser", "example.jl"])
"/home/myuser/example.jl"
abspath(path::AbstractString) -> String

如果需要,将路径转换为绝对路径,并添加当前目录。 它还将路径归一化,如下所示 'normpath'

例子

如果您在`JuliaExample`目录中,并且您正在使用的数据相对于’JuliaExample’目录高出两个级别,则可以编写:

abspath("../../data")

结果将是像`"/home/JuliaUser/data/"'这样的路径。

另请参阅说明 '连接路径', "残疾人士"'expanduser'


abspath(path::AbstractString, paths::AbstractString...) -> String

将一组路径转换为绝对路径,组合它们并在必要时添加当前目录。 相当于`abpath(joinpath(path,paths...))`.

normpath(path::AbstractString) -> String

通过删除"来规范化路径。"和"。."元素并将"/"更改为系统的规范路径分隔符。

例子

julia> normpath("/home/myuser/../example.jl")
"/home/example.jl"

julia> normpath("Documents/Julia") == joinpath("Documents", "Julia")
true

normpath(path::AbstractString, paths::AbstractString...) -> String

将一组路径转换为一个归一化的路径与他们的联合和删除的元素"。"和"。.". 相当于'normpath(joinpath(path,paths...))`.

realpath(path::AbstractString) -> String

通过扩展符号链接并删除"来规范路径。"和"。."元素。 在区分大小写和不区分大小写的文件系统(通常是Mac和Windows)中,将为路径返回存储在文件系统中的大小写。

(如果文件系统中不存在"路径",则此函数会引发异常。)

relpath(path::AbstractString, startpath::AbstractString = ".") -> String

从当前目录或可选的开始目录返回`path`的相对文件路径。 路径计算:没有调用文件系统来确认`path`或`startpath’的存在或性质。

在Windows中,除驱动器号外,路径的所有部分都考虑大小写。 如果’path’和`startpath’引用不同的磁盘,则返回绝对路径`path'。

expanduser(path::AbstractString) -> AbstractString

在Unix系统上,它将路径开头的波浪号字符替换为当前用户的主目录。

另请参阅说明 'contractuser'

contractuser(path::AbstractString) -> AbstractString

如果路径在Unix系统上以"homedir()"开头,请将其替换为波浪号字符。

另请参阅说明 'expanduser'

samefile(path_a::AbstractString, path_b::AbstractString)

检查路径’path_a’和’path_b’是否引用相同的现有文件或目录。

splitdir(path::AbstractString) -> (AbstractString, AbstractString)

将路径拆分为目录名和文件名的元组。

例子

julia> splitdir("/home/myuser")
("/home", "myuser")
splitdrive(path::AbstractString) -> (AbstractString, AbstractString)

在Windows中,它将路径分为带有驱动器号的部分和带有路径的部分。 在Unix系统上,第一个组件始终是空字符串。

splitext(path::AbstractString) -> (String, String)

如果路径的最后一个组件包含一个或多个点,它将路径划分为最后一个点之前的所有内容,以及从该点开始的所有内容。 否则,返回一个不变参数和一个空字符串的元组。 splitext是split extension的简称,按扩展拆分。

例子

julia> splitext("/home/myuser/example.jl")
("/home/myuser/example", ".jl")

julia> splitext("/home/myuser/example.tar.gz")
("/home/myuser/example.tar", ".gz")

julia> splitext("/home/my.user/example")
("/home/my.user/example", "")
splitpath(path::AbstractString) -> Vector{String}

将文件路径划分为所有组件。 这是`joinpath’的反向功能。 返回子字符串数组,每个子字符串对应路径中的每个目录或文件,包括根目录(如果有)。

兼容性:Julia1.1

此功能需要至少1.1的Julia版本。

例子

julia> splitpath("/home/myuser/example.jl")
4-element Vector{String}:
 "/"
 "home"
 "myuser"
 "example.jl"