Skip to content

OS

The @std/os module provides filesystem helpers for reading directories, copying, moving, removing, checking paths, and creating directories.

import os from "@std/os"
println(os.exists("README.md"))
NameKindDescription
FileInfostructMetadata about a file or directory.
DirEntrystructDirectory entry returned by readDir.
readDirfunctionReads a directory and returns entries.
copyfunctionCopies a file.
movefunctionMoves or renames a file or directory.
removefunctionRemoves a file or directory recursively.
existsfunctionChecks whether a path exists.
mkdirfunctionCreates a directory recursively.

FileInfo describes a file or directory.

FieldTypeDescription
namestringFile or directory name.
isDirboolWhether the path is a directory.
sizeintSize in bytes.
modeintFile mode.
modTimeTimeLast modification time.

DirEntry describes an entry inside a directory.

FieldTypeDescription
namestringEntry name.
isDirboolWhether the entry is a directory.
infofn() -> FileInfoFunction that returns metadata.
import os from "@std/os"
let entries = os.readDir(".")
for entry in entries {
println(entry.name, entry.isDir)
let info = entry.info()
println(info.size)
}

Reads a directory.

Arguments:

NameTypeDescription
dirstringDirectory path.

Returns: []DirEntry

import os from "@std/os"
let entries = os.readDir(".")
for entry in entries {
println(entry.name)
}

Copies a file from src to dst.

import os from "@std/os"
os.copy("input.txt", "backup.txt")

Moves or renames a file or directory.

import os from "@std/os"
os.move("backup.txt", "archive/backup.txt")

Removes a file or directory recursively.

import os from "@std/os"
os.remove("archive")

Checks whether a path exists.

Returns: bool

import os from "@std/os"
if os.exists("config.json") {
println("config found")
}

Creates a directory recursively.

import os from "@std/os"
os.mkdir("storage/cache")