Filesystem

Base.readMethod
read(filename::AbstractString)

파일의 전체 내용을 Vector{UInt8}로 읽습니다.

read(filename::AbstractString, String)

파일의 전체 내용을 문자열로 읽습니다.

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

파일을 열고 그 내용을 읽습니다. argsread에 전달됩니다: 이는 open(io->read(io, args...), filename)과 동일합니다.

source
Base.writeMethod
write(filename::AbstractString, content)

content의 표준 이진 표현을 파일에 씁니다. 파일이 아직 존재하지 않으면 생성되며, 존재하는 경우에는 덮어씁니다.

파일에 기록된 바이트 수를 반환합니다.

source
Base.Filesystem.pwdFunction
pwd() -> String

현재 작업 디렉토리를 가져옵니다.

참고: cd, tempdir.

예제

julia> pwd()
"/home/JuliaUser"

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

julia> pwd()
"/home/JuliaUser/Projects/julia"
source
Base.Filesystem.cdMethod
cd(dir::AbstractString=homedir())

현재 작업 디렉토리를 설정합니다.

참고: pwd, mkdir, mkpath, mktempdir.

예제

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

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

julia> cd()

julia> pwd()
"/home/JuliaUser"
source
Base.Filesystem.cdMethod
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"
source
Base.Filesystem.readdirFunction
readdir(dir::AbstractString=pwd();
    join::Bool = false,
    sort::Bool = true,
) -> Vector{String}

디렉토리 dir의 이름을 반환하거나 주어지지 않은 경우 현재 작업 디렉토리의 이름을 반환합니다. join이 false인 경우, readdir은 디렉토리의 이름만 그대로 반환합니다. join이 true인 경우, 각 name에 대해 joinpath(dir, name)을 반환하여 반환된 문자열이 전체 경로가 되도록 합니다. 절대 경로를 얻으려면 절대 디렉토리 경로와 join을 true로 설정하여 readdir을 호출하십시오.

기본적으로 readdir은 반환하는 이름 목록을 정렬합니다. 이름 정렬을 건너뛰고 파일 시스템이 나열하는 순서로 얻으려면 readdir(dir, sort=false)를 사용하여 정렬을 선택 해제할 수 있습니다.

또한 참조: walkdir.

Julia 1.4

joinsort 키워드 인수는 최소한 Julia 1.4가 필요합니다.

예제

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"
source
Base.Filesystem.walkdirFunction
walkdir(dir; topdown=true, follow_symlinks=false, onerror=throw)

디렉토리의 디렉토리 트리를 탐색하는 반복자를 반환합니다. 반복자는 (rootpath, dirs, files)를 포함하는 튜플을 반환합니다. 디렉토리 트리는 위에서 아래로 또는 아래에서 위로 탐색할 수 있습니다. walkdir 또는 statIOError를 만나면 기본적으로 오류를 다시 발생시킵니다. 사용자 정의 오류 처리 함수를 onerror 키워드 인수를 통해 제공할 수 있습니다. onerrorIOError를 인수로 호출됩니다.

참고: 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[])
source
Base.Filesystem.mkdirFunction
mkdir(path::AbstractString; mode::Unsigned = 0o777)

path라는 이름과 mode라는 권한으로 새 디렉토리를 만듭니다. mode는 기본적으로 0o777이며, 현재 파일 생성 마스크에 의해 수정됩니다. 이 함수는 한 개의 디렉토리만 생성합니다. 디렉토리가 이미 존재하거나 일부 중간 디렉토리가 존재하지 않으면 이 함수는 오류를 발생시킵니다. 필요한 모든 중간 디렉토리를 생성하는 함수에 대한 내용은 mkpath를 참조하세요. path를 반환합니다.

예제

julia> mkdir("testingdir")
"testingdir"

julia> cd("testingdir")

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

필요에 따라 path의 모든 중간 디렉토리를 생성합니다. 디렉토리는 기본값이 0o777mode 권한으로 생성되며, 현재 파일 생성 마스크에 의해 수정됩니다. mkdir와 달리, mkpathpath(또는 그 일부)가 이미 존재하는 경우 오류를 발생시키지 않습니다. 그러나 path(또는 그 일부)가 기존 파일을 가리키는 경우 오류가 발생합니다. 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")
true
source
Base.Filesystem.hardlinkFunction
hardlink(src::AbstractString, dst::AbstractString)

기존 소스 파일 src에 대한 하드 링크를 이름 dst로 생성합니다. 목적지 dst는 존재하지 않아야 합니다.

또한: symlink.

Julia 1.8

이 메서드는 Julia 1.8에 추가되었습니다.

source
Base.Filesystem.symlinkFunction
symlink(target::AbstractString, link::AbstractString; dir_target = false)

target에 대한 심볼릭 링크를 link라는 이름으로 생성합니다.

Windows에서는 심볼릭 링크가 명시적으로 디렉토리를 참조하는지 여부를 선언해야 합니다. target이 이미 존재하는 경우, 기본적으로 link의 유형은 자동으로 감지되지만, target이 존재하지 않는 경우 이 함수는 기본적으로 파일 심볼릭 링크를 생성합니다. 단, dir_targettrue로 설정된 경우는 제외입니다. 사용자가 dir_target을 설정했지만 target이 존재하고 파일인 경우, 여전히 디렉토리 심볼릭 링크가 생성되지만, 심볼릭 링크를 역참조하면 실패합니다. 이는 사용자가 디렉토리가 생성되기 전에 dir_targetfalse로 설정하여 symlink()를 호출하여 파일 심볼릭 링크를 생성하고 이를 디렉토리로 역참조하려고 할 때와 같습니다.

또한, Windows에서 링크를 만드는 두 가지 방법이 있습니다. 심볼릭 링크와 정션 포인트입니다. 정션 포인트는 약간 더 효율적이지만 상대 경로를 지원하지 않으므로, 상대 디렉토리 심볼릭 링크가 요청되면(isabspath(target)false를 반환하는 경우) 심볼릭 링크가 사용되고, 그렇지 않으면 정션 포인트가 사용됩니다. Windows에서 심볼릭 링크를 생성하는 모범 사례는 참조하는 파일/디렉토리가 이미 생성된 후에만 생성하는 것입니다.

또한 참조: hardlink.

Note

이 함수는 Windows XP와 같이 소프트 심볼릭 링크를 지원하지 않는 운영 체제에서 오류를 발생시킵니다.

Julia 1.6

dir_target 키워드 인자는 Julia 1.6에서 추가되었습니다. 이 이전에는 Windows에서 존재하지 않는 경로에 대한 심볼릭 링크는 항상 파일 심볼릭 링크였으며, 디렉토리에 대한 상대 심볼릭 링크는 지원되지 않았습니다.

source
Base.Filesystem.readlinkFunction
readlink(path::AbstractString) -> String

심볼릭 링크 path가 가리키는 대상 위치를 반환합니다.

source
Base.Filesystem.chmodFunction
chmod(path::AbstractString, mode::Integer; recursive::Bool=false)

path의 권한 모드를 mode로 변경합니다. 현재 정수 mode(예: 0o777)만 지원됩니다. recursive=true이고 경로가 디렉토리인 경우 해당 디렉토리의 모든 권한이 재귀적으로 변경됩니다. path를 반환합니다.

Note

Julia 1.6 이전에는 Windows에서 파일 시스템 ACL을 올바르게 조작하지 못했으므로 파일에 대해 읽기 전용 비트만 설정했습니다. 이제 ACL을 조작할 수 있습니다.

source
Base.Filesystem.chownFunction
chown(path::AbstractString, owner::Integer, group::Integer=-1)

path의 소유자 및/또는 그룹을 owner 및/또는 group으로 변경합니다. owner 또는 group에 입력된 값이 -1인 경우 해당 ID는 변경되지 않습니다. 현재 정수 ownergroup만 지원됩니다. path를 반환합니다.

source
Base.Libc.RawFDType
RawFD

네이티브 OS 파일 설명자를 감싸는 원시 타입입니다. RawFDstat와 같은 메서드에 전달되어 기본 파일에 대한 정보를 발견할 수 있으며, 스트림을 열 때도 사용할 수 있으며, 이 경우 RawFD는 스트림을 지원하는 OS 파일을 설명합니다.

source
Base.statFunction
stat(file)

파일에 대한 정보를 포함하는 구조체를 반환합니다. 구조체의 필드는 다음과 같습니다:

이름유형설명
descUnion{String, Base.OS_HANDLE}경로 또는 OS 파일 설명자
sizeInt64파일의 크기(바이트 단위)
deviceUInt파일이 포함된 장치의 ID
inodeUInt파일의 inode 번호
modeUInt파일의 보호 모드
nlinkInt파일에 대한 하드 링크의 수
uidUInt파일 소유자의 사용자 ID
gidUInt파일 소유자의 그룹 ID
rdevUInt이 파일이 장치를 참조하는 경우, 참조하는 장치의 ID
blksizeInt64파일에 대한 파일 시스템의 선호 블록 크기
blocksInt64할당된 512바이트 블록의 수
mtimeFloat64파일이 마지막으로 수정된 Unix 타임스탬프
ctimeFloat64파일의 메타데이터가 변경된 Unix 타임스탬프
source
Base.Filesystem.diskstatFunction
diskstat(path=pwd())

path가 가리키는 파일 또는 디렉토리가 포함된 디스크에 대한 바이트 단위의 통계를 반환합니다. 인수가 전달되지 않으면 현재 작업 디렉토리가 포함된 디스크에 대한 통계가 반환됩니다.

Julia 1.8

이 메서드는 Julia 1.8에 추가되었습니다.

source
Base.Filesystem.lstatFunction
lstat(file)

stat와 유사하지만, 심볼릭 링크에 대해서는 링크 자체에 대한 정보를 가져오고, 링크가 참조하는 파일에 대한 정보는 가져오지 않습니다. 이 함수는 파일 객체나 파일 설명자가 아닌 파일 경로에서 호출해야 합니다.

source
Base.Filesystem.upermFunction
uperm(file)

파일 소유자의 권한을 비트 필드로 가져옵니다.

설명
01실행 권한
02쓰기 권한
04읽기 권한

허용된 인수에 대한 내용은 stat를 참조하세요.

source
Base.Filesystem.opermFunction
operm(file)

uperm와 유사하지만 파일을 소유하지 않거나 파일을 소유한 그룹의 구성원이 아닌 사람들을 위한 권한을 가져옵니다.

source
Base.Filesystem.cpFunction
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가 심볼릭 링크인 경우, dstsrc가 참조하는 파일 또는 디렉토리의 복사가 됩니다. dst를 반환합니다.

Note

cp 함수는 cp 명령과 다릅니다. cp 함수는 항상 dst가 파일이라는 가정 하에 작동하는 반면, 명령은 dst가 디렉토리인지 파일인지에 따라 다른 작업을 수행합니다. dst가 디렉토리일 때 force=true를 사용하면 dst 디렉토리에 있는 모든 내용이 손실되며, dst는 대신 src의 내용을 가진 파일이 됩니다.

source
Base.downloadFunction
download(url::AbstractString, [path::AbstractString = tempname()]) -> path

주어진 url에서 파일을 다운로드하여 path 위치에 저장합니다. 지정하지 않으면 임시 경로에 저장됩니다. 다운로드된 파일의 경로를 반환합니다.

Note

Julia 1.6부터 이 함수는 더 이상 사용되지 않으며 Downloads.download에 대한 얇은 래퍼일 뿐입니다. 새로운 코드에서는 이 함수를 호출하는 대신 해당 함수를 직접 사용해야 합니다.

source
Base.Filesystem.mvFunction
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");
source
Base.Filesystem.rmFunction
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:
[...]
source
Base.Filesystem.touchFunction
Base.touch(::Pidfile.LockMonitor)

잠금의 mtime을 업데이트하여 여전히 최신임을 나타냅니다.

mkpidlock 생성자의 refresh 키워드도 참조하십시오.

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

파일의 마지막 수정 타임스탬프를 현재 시간으로 업데이트합니다.

파일이 존재하지 않으면 새 파일이 생성됩니다.

path를 반환합니다.

예시

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

mtimetouch에 의해 수정된 것을 볼 수 있습니다.

source
Base.Filesystem.tempnameFunction
tempname(parent=tempdir(); cleanup=true) -> String

임시 파일 경로를 생성합니다. 이 함수는 경로만 반환하며, 파일은 생성되지 않습니다. 경로는 고유할 가능성이 있지만, tempname에 대한 두 개의 동시 호출이 동일한 파일 이름을 생성할 가능성이 매우 낮기 때문에 보장할 수는 없습니다. 이름은 tempname 호출 시점에 이미 존재하는 모든 파일과 다를 것이 보장됩니다.

인수가 없는 상태로 호출되면, 임시 이름은 tempdir()에 의해 제공된 시스템 임시 디렉토리의 임시 이름에 대한 절대 경로가 됩니다. parent 디렉토리 인수가 주어지면, 임시 경로는 대신 해당 디렉토리에 위치하게 됩니다.

cleanup 옵션은 프로세스가 종료될 때 반환된 경로를 자동으로 삭제하려고 시도하는지 여부를 제어합니다. tempname 함수는 반환된 위치에 파일이나 디렉토리를 생성하지 않으므로, 그곳에 파일이나 디렉토리를 생성하지 않는 한 정리할 것이 없습니다. 만약 생성하고 cleanuptrue이면 프로세스 종료 시 삭제됩니다.

Julia 1.4

parentcleanup 인수는 1.4에서 추가되었습니다. Julia 1.4 이전에는 tempname의 경로가 프로세스 종료 시 정리되지 않았습니다.

Warning

다른 프로세스가 동일한 파일 이름을 얻고 당신이 파일을 생성하기 전에 파일을 생성하면 보안 구멍이 발생할 수 있습니다. 이 점이 우려된다면 JL_O_EXCL로 파일을 여세요. mktemp()를 사용하는 것도 권장됩니다.

source
Base.Filesystem.tempdirFunction
tempdir()

임시 디렉토리의 경로를 가져옵니다. Windows에서는 tempdir()이 정렬된 목록 TMP, TEMP, USERPROFILE에서 발견된 첫 번째 환경 변수를 사용합니다. 다른 모든 운영 체제에서는 tempdir()이 정렬된 목록 TMPDIR, TMP, TEMP, TEMPDIR에서 발견된 첫 번째 환경 변수를 사용합니다. 이러한 변수 중 어느 것도 발견되지 않으면 경로 "/tmp"가 사용됩니다.

source
Base.Filesystem.mktempMethod
mktemp(parent=tempdir(); cleanup=true) -> (path, io)

(path, io)를 반환합니다. 여기서 pathparent에 있는 새 임시 파일의 경로이고, io는 이 경로에 대한 열린 파일 객체입니다. cleanup 옵션은 프로세스가 종료될 때 임시 파일이 자동으로 삭제되는지 여부를 제어합니다.

Julia 1.3

cleanup 키워드 인자는 Julia 1.3에서 추가되었습니다. 관련하여, 1.3부터 Julia는 cleanup이 명시적으로 false로 설정되지 않는 한, Julia 프로세스가 종료될 때 mktemp로 생성된 임시 경로를 제거합니다.

source
Base.Filesystem.mktempdirMethod
mktempdir(parent=tempdir(); prefix="jl_", cleanup=true) -> path

주어진 prefix와 무작위 접미사로 구성된 이름을 가진 임시 디렉토리를 parent 디렉토리에 생성하고 그 경로를 반환합니다. 또한, 일부 플랫폼에서는 prefix의 끝에 있는 'X' 문자가 무작위 문자로 대체될 수 있습니다. parent가 존재하지 않으면 오류를 발생시킵니다. cleanup 옵션은 프로세스가 종료될 때 임시 디렉토리가 자동으로 삭제되는지 여부를 제어합니다.

Julia 1.2

prefix 키워드 인자는 Julia 1.2에서 추가되었습니다.

Julia 1.3

cleanup 키워드 인자는 Julia 1.3에서 추가되었습니다. 관련하여, 1.3부터 Julia는 cleanup이 명시적으로 false로 설정되지 않는 한, Julia 프로세스가 종료될 때 mktempdir로 생성된 임시 경로를 제거합니다.

참고: mktemp, mkdir.

source
Base.Filesystem.isblockdevFunction
isblockdev(path) -> Bool

path가 블록 장치인 경우 true를 반환하고, 그렇지 않은 경우 false를 반환합니다.

source
Base.Filesystem.ischardevFunction
ischardev(path) -> Bool

path가 문자 장치인 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.isdirFunction
isdir(path) -> Bool

path가 디렉토리인 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다.

예제

julia> isdir(homedir())
true

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

또한 isfileispath를 참조하십시오.

source
Base.Filesystem.isfifoFunction
isfifo(path) -> Bool

path가 FIFO이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.isfileFunction
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

또한 isdirispath를 참조하십시오.

source
Base.Filesystem.islinkFunction
islink(path) -> Bool

path가 심볼릭 링크인 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.ismountFunction
ismount(path) -> Bool

path가 마운트 지점이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.ispathFunction
ispath(path) -> Bool

유효한 파일 시스템 엔티티가 path에 존재하면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 이는 isfile, isdir 등의 일반화입니다.

source
Base.Filesystem.issetgidFunction
issetgid(path) -> Bool

path에 setgid 플래그가 설정되어 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.issetuidFunction
issetuid(path) -> Bool

path에 setuid 플래그가 설정되어 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.issocketFunction
issocket(path) -> Bool

path가 소켓이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.isstickyFunction
issticky(path) -> Bool

path에 스티키 비트가 설정되어 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

source
Base.Filesystem.homedirFunction
homedir() -> String

현재 사용자의 홈 디렉토리를 반환합니다.

Note

homedirlibuvuv_os_homedir를 통해 홈 디렉토리를 결정합니다. 홈 디렉토리를 환경 변수를 통해 지정하는 방법에 대한 자세한 내용은 uv_os_homedir 문서를 참조하세요.

또한 Sys.username를 참조하세요.

source
Base.Filesystem.dirnameFunction
dirname(path::AbstractString) -> String

경로의 디렉토리 부분을 가져옵니다. 경로의 끝에 있는 문자 ('/' 또는 '\')는 경로의 일부로 간주됩니다.

예제

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

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

또한 basename를 참조하세요.

source
Base.Filesystem.basenameFunction
basename(path::AbstractString) -> String

경로의 파일 이름 부분을 가져옵니다.

Note

이 함수는 Unix basename 프로그램과 약간 다릅니다. 여기서 후행 슬래시는 무시됩니다. 즉, $ basename /foo/bar/bar를 반환하지만, Julia의 basename은 빈 문자열 ""을 반환합니다.

예제

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

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

또한 dirname를 참조하십시오.

source
Base.Filesystem.isabspathFunction
isabspath(path::AbstractString) -> Bool

경로가 절대 경로인지(루트 디렉토리에서 시작하는지) 확인합니다.

예제

julia> isabspath("/home")
true

julia> isabspath("home")
false
source
Base.Filesystem.isdirpathFunction
isdirpath(path::AbstractString) -> Bool

경로가 디렉토리를 참조하는지 여부를 결정합니다(예: 경로 구분자로 끝나는 경우).

예제

julia> isdirpath("/home")
false

julia> isdirpath("/home/")
true
source
Base.Filesystem.joinpathFunction
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"
source
Base.Filesystem.abspathFunction
abspath(path::AbstractString) -> String

현재 디렉토리를 추가하여 경로를 절대 경로로 변환합니다. 또한 normpath와 같이 경로를 정규화합니다.

예제

JuliaExample이라는 디렉토리에 있고 사용 중인 데이터가 JuliaExample 디렉토리에서 두 단계 위에 있는 경우 다음과 같이 작성할 수 있습니다:

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

이것은 "/home/JuliaUser/data/"와 같은 경로를 제공합니다.

또한 joinpath, pwd, expanduser를 참조하세요.

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

경로 집합을 절대 경로로 변환하여 함께 결합하고 필요한 경우 현재 디렉토리를 추가합니다. abspath(joinpath(path, paths...))와 동일합니다.

source
Base.Filesystem.normpathFunction
normpath(path::AbstractString) -> String

경로를 정규화하여 "." 및 ".." 항목을 제거하고 "/"를 시스템의 표준 경로 구분자로 변경합니다.

예제

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

julia> normpath("Documents/Julia") == joinpath("Documents", "Julia")
true
source
normpath(path::AbstractString, paths::AbstractString...) -> String

여러 경로를 결합하고 "." 및 ".." 항목을 제거하여 정규화된 경로로 변환합니다. normpath(joinpath(path, paths...))와 동일합니다.

source
Base.Filesystem.realpathFunction
realpath(path::AbstractString) -> String

기호 링크를 확장하고 "." 및 ".." 항목을 제거하여 경로를 정규화합니다. 대소문자를 구분하지 않고 대소문자를 보존하는 파일 시스템(일반적으로 Mac 및 Windows)에서는 경로에 대한 파일 시스템의 저장된 대소문자가 반환됩니다.

(이 함수는 path가 파일 시스템에 존재하지 않으면 예외를 발생시킵니다.)

source
Base.Filesystem.relpathFunction
relpath(path::AbstractString, startpath::AbstractString = ".") -> String

현재 디렉토리 또는 선택적 시작 디렉토리에서 path에 대한 상대 파일 경로를 반환합니다. 이는 경로 계산입니다: path 또는 startpath의 존재 여부나 성격을 확인하기 위해 파일 시스템에 접근하지 않습니다.

Windows에서는 드라이브 문자를 제외한 경로의 모든 부분에 대해 대소문자 구분이 적용됩니다. pathstartpath가 서로 다른 드라이브를 참조하는 경우, path의 절대 경로가 반환됩니다.

source
Base.Filesystem.expanduserFunction
expanduser(path::AbstractString) -> AbstractString

유닉스 시스템에서 경로의 시작 부분에 있는 물결표 문자를 현재 사용자의 홈 디렉토리로 대체합니다.

또한 참조: contractuser.

source
Base.Filesystem.samefileFunction
samefile(path_a::AbstractString, path_b::AbstractString)

path_apath_b가 동일한 기존 파일 또는 디렉토리를 참조하는지 확인합니다.

source
Base.Filesystem.splitdirFunction
splitdir(path::AbstractString) -> (AbstractString, AbstractString)

경로를 디렉토리 이름과 파일 이름의 튜플로 분할합니다.

예시

julia> splitdir("/home/myuser")
("/home", "myuser")
source
Base.Filesystem.splitdriveFunction
splitdrive(path::AbstractString) -> (AbstractString, AbstractString)

Windows에서는 경로를 드라이브 문자 부분과 경로 부분으로 나눕니다. Unix 시스템에서는 첫 번째 구성 요소가 항상 빈 문자열입니다.

source
Base.Filesystem.splitextFunction
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", "")
source
Base.Filesystem.splitpathFunction
splitpath(path::AbstractString) -> Vector{String}

파일 경로를 모든 경로 구성 요소로 분할합니다. 이는 joinpath의 반대입니다. 경로에 있는 각 디렉토리 또는 파일에 대해 하나씩의 하위 문자열 배열을 반환하며, 루트 디렉토리가 있는 경우 포함됩니다.

Julia 1.1

이 함수는 최소한 Julia 1.1이 필요합니다.

예제

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