이 문제를 해결하기 위해 다양한 사용자 정보를 검색 할 수있는 크로스 플랫폼 방법을 제공하는 OS/사용자 패키지를 활용할 수 있습니다. 현재 () 함수를 사용하면 홈 디렉토리를 포함하여 현재 사용자의 세부 정보를 얻을 수 있습니다. import ( "OS/사용자" "Path/FilePath" )) // 유틸리티 함수 tilde 문자를 사용자의 홈 디렉토리로 확장합니다. func expandtilde (path string) 문자열 { currentuser, _ : = user.current () HomeDir : = currentuser.homedir If Path == "~"{ 귀환 홈디아어 } else if strings.haspRefix (경로, "~/") { return filepath.join (HomeDir, Path [2 :]) } 반환 경로 }
이 함수는 경로 문자열이 "~/"로 시작하는지 확인하여 확장이 필요한지 확인한 다음 filepath.join을 사용하여 홈 디렉토리를 상대 경로와 연결합니다. 이 기능성은 기존 코드로, 이제 대상 경로에서 tilde 문자를 확장 할 수 있습니다 :
"경로"가져 오기 // var 대상 *문자열은 사용자 입력입니다 func expandpath () { IF PATH.ISABS (*대상) { 반품 } cwd, err : = os.getwd () checkerror (err) *대상 = path.join (CWD, *대상) }
import ( "os/user" "path/filepath" ) // Utility function to expand the tilde character to the user's home directory func expandTilde(path string) string { currentUser, _ := user.Current() homeDir := currentUser.HomeDir if path == "~" { return homeDir } else if strings.HasPrefix(path, "~/") { return filepath.Join(homeDir, path[2:]) } return path }
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3