Go を使用してチルダをホーム ディレクトリに展開する
プログラムには、チルダ (~) 文字をユーザーのホーム ディレクトリに展開する機能が必要です。絶対パスと相対パスの両方。これを実現するために、Go は os/user パッケージを提供します。
Go では、user.Current() を使用して現在のユーザーの情報を取得できます。ユーザー タイプには、ユーザーのホーム ディレクトリを表す HomeDir フィールドがあります。
usr, _ := user.Current() homeDir := usr.HomeDir
ホーム ディレクトリを取得したら、パス/ファイルパス パッケージを使用して、指定されたパスと組み合わせることができます。
if path == "~" { // Handle the case where the path is just "~" path = homeDir } else if strings.HasPrefix(path, "~/") { // Handle the case where the path starts with "~/" path = filepath.Join(homeDir, path[2:]) }
セキュリティ上の理由から、user.Current() は Go プレイグラウンドでは使用できないことに注意してください。
以上がGo でチルダ (~) をホーム ディレクトリに展開するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。