Go でファイルの GID を取得する
質問:
os.Stat( ) Linux での結果、プログラムでファイルのグループ ID (GID) を取得するにはどうすればよいですか?
コンテキスト:
os.Stat() 関数は、次のようなファイル メタデータを提供します。ファイルのグループ所有権に関する情報。ただし、結果の FileInfo オブジェクトの Sys() メソッドは、GID に直接アクセスせずに Interface{} を返します。
解決策:
Interface から GID を抽出するには{}これは、Linux 固有の syscall パッケージによって公開される型である *syscall.Stat_t 構造体に型キャストできます。次のコードはこれを示しています。
<code class="go">import ( "fmt" "os" "syscall" ) func main() { abspath := "/path/to/file" file_info, _ := os.Stat(abspath) file_sys := file_info.Sys() file_gid := fmt.Sprint(file_sys.(*syscall.Stat_t).Gid) fmt.Println("File GID:", file_gid) }</code>
このメソッドは、Linux システムでファイルの GID を取得するための信頼できる方法を提供します。
以上がGo で os.Stat() の結果からファイルの GID を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。