Spec-Zone.ru › Julia 1.2

Файловая система

Base.Filesystem.pwdФункция

pwd() -> AbstractString

Получить текущую рабочую директорию.

Примеры

julia> pwd()
"/home/JuliaUser"

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

julia> pwd()
"/home/JuliaUser/Projects/julia"
исходный код

Base.Filesystem.cdМетод

cd(dir::AbstractString=homedir())

Установить текущую рабочую директорию.

Примеры

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

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

julia> cd()

julia> pwd()
"/home/JuliaUser"
исходный код

Base.Filesystem.cdМетод

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"
исходный код

Base.Filesystem.readdirФункция

readdir(dir::AbstractString=".") -> Vector{String}

Возвращает файлы и директории в директории dir (или текущей рабочей директории, если не указано).

Примеры

julia> readdir("/home/JuliaUser/Projects/julia")
34-element Array{String,1}:
 ".circleci"
 ".freebsdci.sh"
 ".git"
 ".gitattributes"
 ".github"
 ⋮
 "test"
 "ui"
 "usr"
 "usr-staging"
исходный код

Base.Filesystem.walkdirФункция

walkdir(dir; topdown=true, follow_symlinks=false, onerror=throw)

Возвращает итератор, который обходит древовидную структуру директорий. Итератор возвращает кортеж, содержащий (rootpath, dirs, files). Дерево директорий можно обходить сверху вниз или снизу вверх. Если walkdir сталкивается с SystemError, по умолчанию, ошибка перебрасывается. Обработку ошибок можно настроить с помощью аргумента onerror. onerror вызывается с SystemError в качестве аргумента.

Примеры

for (root, dirs, files) in walkdir(".")
    println("Directories in $root")
    for dir in dirs
        println(joinpath(root, dir)) # path to directories
    end
    println("Files in $root")
    for file in files
        println(joinpath(root, file)) # path to files
    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[])
исходный код

Base.Filesystem.mkdirФункция

mkdir(path::AbstractString; mode::Unsigned = 0o777)

Создаёт новую директорию с именем path и правами mode. По умолчанию mode равно 0o777, модифицированному текущей маской создания файла. Эта функция никогда не создаёт более одной директории. Если директория уже существует, или некоторые промежуточные директории отсутствуют, функция выдаёт ошибку. См. mkpath для функции, которая создаёт все необходимые промежуточные директории. Возвращает path.

Примеры

julia> mkdir("testingdir")
"testingdir"

julia> cd("testingdir")

julia> pwd()
"/home/JuliaUser/testingdir"
исходный код

Base.Filesystem.mkpathФункция

mkpath(path::AbstractString; mode::Unsigned = 0o777)

Создаёт все директории в заданном path, с правами mode. По умолчанию mode равно 0o777, модифицированному текущей маской создания файла. Возвращает path.

Примеры

julia> mkdir("testingdir")
"testingdir"

julia> cd("testingdir")

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

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"
исходный код

Base.Filesystem.symlinkФункция

symlink(target::AbstractString, link::AbstractString)

Создаёт символическую ссылку на target с именем link.

Примечание

Эта функция вызывает ошибку в операционных системах, не поддерживающих мягкие символические ссылки, таких как Windows XP.

исходный код

Base.Filesystem.readlinkФункция

readlink(path::AbstractString) -> AbstractString

Возвращает целевой путь символической ссылки path.

исходный код

Base.Filesystem.chmodФункция

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

Изменяет права доступа к path на mode. В настоящее время поддерживаются только целые числа mode (например, 0o777). Если recursive=true и путь — директория, все права в этой директории будут изменены рекурсивно. Возвращает path.

исходный код

Base.Filesystem.chownФункция

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

Изменяет владельца и/или группу path на owner и/или group. Если значение для owner или group равно -1, соответствующий идентификатор не изменится. В настоящее время поддерживаются только целые числа owner и group. Возвращает path.

исходный код

Base.Libc.RawFDТип

RawFD

Примитивный тип, который оборачивает системный дескриптор файла. RawFD можно передавать в методы, такие как stat, чтобы получить информацию об underlying файле, а также для открытия потоков, где RawFD описывает системный файл, лежащий в основе потока.

исходный код

Base.statФункция

stat(file)

Возвращает структуру, поля которой содержат информацию о файле. Поля структуры:

Имя Описание
size Размер файла (в байтах)
device Идентификатор устройства, содержащего файл
inode Номер inode файла
mode Режим защиты файла
nlink Количество жёстких ссылок на файл
uid Идентификатор пользователя владельца файла
gid Идентификатор группы владельца файла
rdev Если этот файл ссылается на устройство, идентификатор устройства, на которое он ссылается
blksize Предпочтительный размер блока файловой системы для файла
blocks Количество выделенных таких блоков
mtime Маркер времени Unix, когда файл был в последний раз изменён
ctime Маркер времени Unix, когда файл был создан
исходный код

Base.Filesystem.lstatФункция

lstat(file)

Аналогично stat, но для символических ссылок получает информацию о самой ссылке, а не о файле, на который она ссылается. Эту функцию необходимо вызывать для пути к файлу, а не для объекта файла или дескриптора файла.

исходный код

Base.Filesystem.ctimeФункция

ctime(file)

Эквивалентно stat(file).ctime.

исходный код

Base.Filesystem.mtimeФункция

mtime(file)

Эквивалентно stat(file).mtime.

исходный код

Base.Filesystem.filemodeФункция

filemode(file)

Эквивалентно stat(file).mode.

исходный код

Base.Filesystem.filesizeФункция

filesize(path...)

Эквивалентно stat(file).size.

исходный код

Base.Filesystem.upermФункция

uperm(file)

Получить права владельца файла как битовую маску:

Значение Описание
01 Право на выполнение
02 Право на запись
04 Право на чтение

Для допустимых аргументов см. stat.

source

Base.Filesystem.gpermФункция

gperm(file)

Как uperm, но получает разрешения группы, владеющей файлом.

source

Base.Filesystem.opermФункция

operm(file)

Как uperm, но получает разрешения для пользователей, которые не являются владельцами файла и не входят в группу, владеющую файлом.

source

Base.Filesystem.cpФункция

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.

source

Base.downloadФункция

download(url::AbstractString, [localfile::AbstractString])

Загружает файл с указанного URL, необязательно переименовывая его в указанное имя локального файла. Если имя файла не указано, файл будет загружен в случайное имя файла в вашей временной директории. Обратите внимание, что эта функция полагается на доступность внешних инструментов, таких как curl, wget или fetch для загрузки файла и предоставляется для удобства. Для использования в производстве или в ситуациях, когда требуется больше опций, используйте пакет, предоставляющий желаемую функциональность.

Возвращает имя загруженного файла.

source

Base.Filesystem.mvФункция

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.rmФункция

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: no such file or directory (ENOENT)
Stacktrace:
[...]
source

Base.Filesystem.touchФункция

touch(path::AbstractString)

Обновляет метку последнего изменения файла до текущего времени. Возвращает 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

Мы можем увидеть, что mtime был изменен touch.

source

Base.Filesystem.tempnameФункция

tempname()

Генерирует временный путь к файлу. Эта функция возвращает только путь; файл не создается. Путь, скорее всего, будет уникальным, но это не гарантируется.

Предупреждение

Это может привести к гонкам, если другой процесс получит то же имя файла и создаст файл, прежде чем вы сможете. Рекомендуется использовать mktemp() вместо этого.

source

Base.Filesystem.tempdirФункция

tempdir()

Получает путь к временной директории (возможно, совместно используемой с другими процессами).

source

Base.Filesystem.mktempМетод

mktemp(parent=tempdir())

Возвращает (path, io), где path - путь к новому временному файлу в parent, а io - открытый объект файла для этого пути.

source

Base.Filesystem.mktempМетод

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

Применяет функцию f к результату mktemp(parent) и удаляет временный файл после завершения.

source

Base.Filesystem.mktempdirМетод

mktempdir(parent=tempdir(); prefix="jl_")

Создает временную директорию в директории parent с именем, построенным из заданного префикса и случайного суффикса, и возвращает её путь. Кроме того, любые завершающие символы X могут быть заменены случайными символами. Если parent не существует, выбрасывается ошибка.

source

Base.Filesystem.mktempdirМетод

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

Применяет функцию f к результату mktempdir(parent; prefix) и удаляет временную директорию и всё её содержимое после завершения.

source

Base.Filesystem.isblockdevФункция

isblockdev(path) -> Bool

Возвращает true, если path является блочным устройством, false в противном случае.

source

Base.Filesystem.ischardevФункция

ischardev(path) -> Bool

Возвращает true, если path является символьным устройством, false в противном случае.

source

Base.Filesystem.isdirФункция

isdir(path) -> Bool

Возвращает true, если path является директорией, false в противном случае.

Примеры

julia> isdir(homedir())
true

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

См. также: isfile и ispath.

source

Base.Filesystem.isfifoФункция

isfifo(path) -> Bool

Возвращает true, если path является FIFO, false в противном случае.

source

Base.Filesystem.isfileФункция

isfile(path) -> Bool

Возвращает true, если path является обычным файлом, false в противном случае.

Примеры

julia> isfile(homedir())
false

julia> f = open("test_file.txt", "w");

julia> isfile(f)
true

julia> close(f); rm("test_file.txt")

См. также: isdir и ispath.

source

Base.Filesystem.islinkФункция

islink(path) -> Bool

Возвращает true, если path является символической ссылкой, false в противном случае.

source

Base.Filesystem.ismountФункция

ismount(path) -> Bool

Возвращает true, если path является точкой монтирования, false в противном случае.

source

Base.Filesystem.ispathФункция

ispath(path) -> Bool

Возвращает true, если в path существует допустимый элемент файловой системы, в противном случае возвращает false. Это обобщение isfile, isdir и т. д.

исходный код

Base.Filesystem.issetgidФункция

issetgid(path) -> Bool

Возвращает true, если у path установлен флаг setgid, false в противном случае.

исходный код

Base.Filesystem.issetuidФункция

issetuid(path) -> Bool

Возвращает true, если у path установлен флаг setuid, false в противном случае.

исходный код

Base.Filesystem.issocketФункция

issocket(path) -> Bool

Возвращает true, если path является сокетом, false в противном случае.

исходный код

Base.Filesystem.isstickyФункция

issticky(path) -> Bool

Возвращает true, если у path установлен бит sticky, false в противном случае.

исходный код

Base.Filesystem.homedirФункция

homedir() -> AbstractString

Возвращает домашний каталог текущего пользователя.

Примечание

homedir определяет домашний каталог через libuv's uv_os_homedir. Подробности (например, как указать домашний каталог через переменные окружения) см. в uv_os_homedir документации.

исходный код

Base.Filesystem.dirnameФункция

dirname(path::AbstractString) -> AbstractString

Возвращает часть пути, относящуюся к каталогу. Завершающие символы ('/' или '\') в пути считаются частью пути.

Примеры

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

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

См. также: basename

исходный код

Base.Filesystem.basenameФункция

basename(path::AbstractString) -> AbstractString

Возвращает часть пути, относящуюся к имени файла.

Примеры

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

См. также: dirname

исходный код

Base.@__FILE__Макрос

@__FILE__ -> AbstractString

Расширяется до строки с путем к файлу, содержащему вызов макроса, или пустой строки, если вычисление выполняется julia -e <expr>. Возвращает nothing, если у макроса отсутствовала информация о коде парсера. В качестве альтернативы см. PROGRAM_FILE.

исходный код

Base.@__DIR__Макрос

@__DIR__ -> AbstractString

Расширяется до строки с абсолютным путем к каталогу файла, содержащего вызов макроса. Возвращает текущую рабочую директорию, если запуск происходит из REPL или при вычислении julia -e <expr>.

исходный код

Base.@__LINE__Макрос

@__LINE__ -> Int

Расширяется до номера строки местоположения вызова макроса. Возвращает 0, если номер строки определить не удалось.

исходный код

Base.Filesystem.isabspathФункция

isabspath(path::AbstractString) -> Bool

Определяет, является ли путь абсолютным (начинается с корневого каталога).

Примеры

julia> isabspath("/home")
true

julia> isabspath("home")
false
исходный код

Base.Filesystem.isdirpathФункция

isdirpath(path::AbstractString) -> Bool

Определяет, ссылается ли путь на каталог (например, заканчивается разделителем путей).

Примеры

julia> isdirpath("/home")
false

julia> isdirpath("/home/")
true
исходный код

Base.Filesystem.joinpathФункция

joinpath(parts...) -> AbstractString

Объединяет компоненты пути в полное имя пути. Если какой-либо аргумент является абсолютным путем или (в Windows) имеет спецификацию диска, которая не соответствует диску, вычисленному для объединения предыдущих путей, то предыдущие компоненты отбрасываются.

Примеры

julia> joinpath("/home/myuser", "example.jl")
"/home/myuser/example.jl"
исходный код

Base.Filesystem.abspathФункция

abspath(path::AbstractString) -> AbstractString

Преобразует путь в абсолютный путь, добавив текущую директорию при необходимости. Также нормализует путь, как в normpath.

исходный код
abspath(path::AbstractString, paths::AbstractString...) -> AbstractString

Преобразует набор путей в абсолютный путь, объединяя их вместе и добавляя текущую директорию при необходимости. Эквивалентно abspath(joinpath(path, paths...)).

исходный код

Base.Filesystem.normpathФункция

normpath(path::AbstractString) -> AbstractString

Нормализует путь, удаляя вхождения "." и "..".

Примеры

julia> normpath("/home/myuser/../example.jl")
"/home/example.jl"
исходный код

Base.Filesystem.realpathФункция

realpath(path::AbstractString) -> AbstractString

Канонизирует путь, расширяя символические ссылки и удаляя вхождения "." и ".." . В файловых системах с регистронезависимым, но сохраняющим регистр (как правило, macOS и Windows), возвращается регистровое представление пути, хранимое в файловой системе.

(Эта функция генерирует исключение, если path не существует в файловой системе.)

исходный код

Base.Filesystem.relpathФункция

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

Возвращает относительный путь к path либо из текущей директории, либо из опциональной начальной директории. Это вычисление пути: доступ к файловой системе не используется для проверки существования или природы path или startpath.

исходный код

Base.Filesystem.expanduserФункция

expanduser(path::AbstractString) -> AbstractString

В системах Unix заменяет символ тильды в начале пути домашним каталогом текущего пользователя.

исходный код

Base.Filesystem.splitdirФункция

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

Разделяет путь на пару имени каталога и имени файла.

Примеры

julia> splitdir("/home/myuser")
("/home", "myuser")
исходный код

Base.Filesystem.splitdriveФункция

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

В Windows разделяет путь на букву диска и часть пути. В системах Unix первый компонент всегда является пустой строкой.

исходный код

Base.Filesystem.splitextФункция

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

Если последний компонент пути содержит точку, разделяет путь на часть перед точкой и часть, включающую и следующую за точкой. В противном случае возвращает кортеж с аргументом без изменений и пустой строкой.

Примеры

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

julia> splitext("/home/myuser/example")
("/home/myuser/example", "")
исходный код

Base.Filesystem.splitpathФункция

splitpath(path::AbstractString) -> Vector{String}

Разделяет путь файла на все его компоненты пути. Это противоположность joinpath. Возвращает массив подстрок, по одной для каждого каталога или файла в пути, включая корневой каталог, если он есть.

Julia 1.1

Эта функция требует как минимум Julia 1.1.

Примеры

julia> splitpath("/home/myuser/example.jl")
4-element Array{String,1}:
 "/"
 "home"
 "myuser"
 "example.jl"
исходный код

© 2009–2019 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors
Licensed under the MIT License.
https://docs.julialang.org/en/v1.2.0/base/file/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API