文件操作 - stat_openbsd.go
返回文件管理
返回主菜单
删除本文件
文件: /usr/share/go-1.23/src/os/stat_openbsd.go
编辑文件内容
// Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package os import ( "internal/filepathlite" "syscall" "time" ) func fillFileStatFromSys(fs *fileStat, name string) { fs.name = filepathlite.Base(name) fs.size = fs.sys.Size fs.modTime = time.Unix(fs.sys.Mtim.Unix()) fs.mode = FileMode(fs.sys.Mode & 0777) switch fs.sys.Mode & syscall.S_IFMT { case syscall.S_IFBLK: fs.mode |= ModeDevice case syscall.S_IFCHR: fs.mode |= ModeDevice | ModeCharDevice case syscall.S_IFDIR: fs.mode |= ModeDir case syscall.S_IFIFO: fs.mode |= ModeNamedPipe case syscall.S_IFLNK: fs.mode |= ModeSymlink case syscall.S_IFREG: // nothing to do case syscall.S_IFSOCK: fs.mode |= ModeSocket } if fs.sys.Mode&syscall.S_ISGID != 0 { fs.mode |= ModeSetgid } if fs.sys.Mode&syscall.S_ISUID != 0 { fs.mode |= ModeSetuid } if fs.sys.Mode&syscall.S_ISVTX != 0 { fs.mode |= ModeSticky } } // For testing. func atime(fi FileInfo) time.Time { return time.Unix(fi.Sys().(*syscall.Stat_t).Atim.Unix()) }
修改文件时间
将文件时间修改为当前时间的前一年
删除文件