Documentation
¶
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DupPerms ¶ added in v0.1.2
DupPerms duplicates the perms of one file or directory onto the second.
Example ¶
package main
import (
"fmt"
"os"
"github.com/rwxrob/fs"
)
func main() {
os.Mkdir(`testdata/some`, 0000)
defer os.Remove(`testdata/some`)
stats, _ := os.Stat(`testdata/orig`)
fmt.Println(stats.Mode())
stats, _ = os.Stat(`testdata/some`)
fmt.Println(stats.Mode())
err := fs.DupPerms(`testdata/orig`, `testdata/some`)
if err != nil {
fmt.Println(err)
}
stats, _ = os.Stat(`testdata/some`)
fmt.Println(stats.Mode())
}
Output: drw------- d--------- drw-------
func Exists ¶ added in v0.3.0
Exists returns true if the given path was absolutely found to exist on the system. A false return value means either the file does not exists or it was not able to determine if it exists or not. Use NotExists instead.
WARNING: do not use this function if a definitive check for the non-existence of a file is required since the possible indeterminate error state is a possibility. These checks are also not atomic on many file systems so avoid this usage for pseudo-semaphore designs and depend on file locks.
Example ¶
package main
import (
"fmt"
"github.com/rwxrob/fs"
)
func main() {
fmt.Println(fs.Exists("testdata/file")) // use NotExists instead of !
}
Output: false
func IsDir ¶
IsDir returns true if the indicated path is a directory. Returns false and logs if unable to determine.
Example ¶
package main
import (
"fmt"
"github.com/rwxrob/fs"
)
func main() {
fmt.Println(fs.IsDir("testdata"))
fmt.Println(fs.IsDir("testdata/fail"))
}
Output: true false
func ModTime ¶ added in v0.3.0
ModTime returns the FileInfo.ModTime() from Stat() as a convenience or returns a zero time if not. See time.IsZero.
Example ¶
package main
import (
"fmt"
"github.com/rwxrob/fs"
)
func main() {
fmt.Println(fs.ModTime("testdata/file").IsZero())
fmt.Println(fs.ModTime("testdata/none"))
}
Output: true 0001-01-01 00:00:00 +0000 UTC
Types ¶
This section is empty.