1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- // Copyright 2020 The Gogs Authors. All rights reserved.
- // Use of this source code is governed by a MIT-style
- // license that can be found in the LICENSE file.
- package osutil
- import (
- "os"
- "os/user"
- )
- // IsFile returns true if given path exists as a file (i.e. not a directory).
- func IsFile(path string) bool {
- f, e := os.Stat(path)
- if e != nil {
- return false
- }
- return !f.IsDir()
- }
- // IsDir returns true if given path is a directory, and returns false when it's
- // a file or does not exist.
- func IsDir(dir string) bool {
- f, e := os.Stat(dir)
- if e != nil {
- return false
- }
- return f.IsDir()
- }
- // IsExist returns true if a file or directory exists.
- func IsExist(path string) bool {
- _, err := os.Stat(path)
- return err == nil || os.IsExist(err)
- }
- // CurrentUsername returns the username of the current user.
- func CurrentUsername() string {
- username := os.Getenv("USER")
- if len(username) > 0 {
- return username
- }
- username = os.Getenv("USERNAME")
- if len(username) > 0 {
- return username
- }
- if user, err := user.Current(); err == nil {
- username = user.Username
- }
- return username
- }
|