linux.go 488 B

12345678910111213141516171819202122232425262728
  1. //go:build linux
  2. package get_access_time
  3. import (
  4. "os"
  5. "time"
  6. )
  7. type OneGetAccessTime struct {
  8. }
  9. func (d OneGetAccessTime) GetOSName() string {
  10. return "linux"
  11. }
  12. func (d OneGetAccessTime) GetAccessTime(fileName string) (time.Time, error) {
  13. // return now time and err if file does not exist
  14. fi, err := os.Stat(fileName)
  15. if os.IsNotExist(err) {
  16. return time.Now(), err
  17. }
  18. aTime := fi.Sys().(*syscall.Stat_t).Atim
  19. return my_util.Second2Time(aTime.Nanoseconds() / 1e9), nil
  20. }