Функция os.Chtimes

Функция os.Chtimes изменяет время последнего доступа (access time) и время последней модификации (modification time) указанного файла. Первый параметр принимает путь к файлу в виде строки, второй и третий - временные метки типа time.Time для времени доступа и модификации соответственно. Если передать нулевое значение time.Time, соответствующая временная метка не изменится.

Синтаксис

goos.Chtimes(path, atime, mtime)

Пример

Давайте изменим время доступа и модификации для файла на текущее время:

gopackage main

import (
  "fmt"
  "os"
  "time"
)

func main() {
  now := time.Now()
  err := os.Chtimes("example.txt", now, now)
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println("Timestamps updated successfully")
}

Результат выполнения кода:

go"Timestamps updated successfully"

Пример

Давайте изменим только время модификации, оставив время доступа без изменений. Для этого передадим нулевое значение time.Time для времени доступа:

gopackage main

import (
  "fmt"
  "os"
  "time"
)

func main() {
  mtime := time.Date(2026, time.January, 1, 0, 0, 0, 0, time.UTC)
  err := os.Chtimes("example.txt", time.Time{}, mtime)
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println("Modification time updated")
}

Результат выполнения кода:

go"Modification time updated"

Пример

Давайте попробуем изменить временные метки у несуществующего файла и обработаем ошибку:

gopackage main

import (
  "fmt"
  "os"
  "time"
)

func main() {
  now := time.Now()
  err := os.Chtimes("nonexistent.txt", now, now)
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println("Timestamps updated")
}

Результат выполнения кода:

go"Error: stat nonexistent.txt: no such file or directory"

Смотрите также

  • функцию os.Stat,
    которая возвращает информацию о файле, включая временные метки
  • функцию os.Chmod,
    которая изменяет права доступа к файлу
  • функцию os.Chown,
    которая изменяет владельца файла
  • функцию os.Truncate,
    которая изменяет размер файла