Функция os.Mkdir
Функция os.Mkdir создает новую директорию с указанным именем и правами доступа.
В первый параметр мы передаем путь к создаваемой директории, во второй параметр мы передаем
права доступа в виде константы типа fs.FileMode.
Функция возвращает ошибку, если директорию не удалось создать.
Синтаксис
os.Mkdir(name string, perm fs.FileMode) error
Пример
Давайте создадим директорию с именем "new_folder"
в текущей рабочей директории:
package main
import (
"fmt"
"os"
)
func main() {
err := os.Mkdir("new_folder", 0755)
if err != nil {
fmt.Println("Error:", err)
} else {
fmt.Println("Directory created successfully")
}
}
Результат выполнения кода:
"Directory created successfully"
Пример
Попробуем создать несколько вложенных директорий одной командой. Это вызовет ошибку, поскольку родительской директории не существует:
package main
import (
"fmt"
"os"
)
func main() {
err := os.Mkdir("parent/child", 0755)
if err != nil {
fmt.Println("Error:", err)
}
}
Результат выполнения кода:
"Error: mkdir parent/child: no such file or directory"
Пример
Попробуем создать директорию, которая уже существует. В этом случае функция также вернет ошибку:
package main
import (
"fmt"
"os"
)
func main() {
err := os.Mkdir("new_folder", 0755)
if err != nil {
fmt.Println("Error:", err)
}
}
Результат выполнения кода:
"Error: mkdir new_folder: file exists"
Смотрите также
-
функцию
os.MkdirAll,
которая создает все промежуточные директории в пути -
функцию
os.MkdirTemp,
которая создает временную директорию с уникальным именем -
функцию
os.Remove,
которая удаляет файл или пустую директорию -
функцию
os.RemoveAll,
которая удаляет директорию вместе со всем содержимым