ホームページ > バックエンド開発 > Golang > Go でチルダ (~) をホーム ディレクトリに展開するにはどうすればよいですか?

Go でチルダ (~) をホーム ディレクトリに展開するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-21 05:46:14
オリジナル
240 人が閲覧しました

How Can I Expand Tilde (~) to the Home Directory in Go?

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート