Go でのファイルのハード リンク数へのアクセス
質問:
FileInfo の Go 実装ファイルのプロパティに関する広範な情報を提供します。ただし、ファイルを指すハード リンクの数は含まれません。 Go 標準ライブラリを使用してこの情報を取得するにはどうすればよいですか?
答え:
ファイルへのハード リンクの数は、stat 構造体の st_nlink フィールドに格納されます。
この例では、Linux システム上のハード リンク数を取得する方法を示します。
<code class="go">package main import ( "fmt" "os" "syscall" ) func main() { fi, err := os.Stat("filename") if err != nil { fmt.Println(err) return } var nlink uint64 // Retrieve the system-specific data if sys := fi.Sys(); sys != nil { // Cast the system-specific data to a *syscall.Stat_t if stat, ok := sys.(*syscall.Stat_t); ok { nlink = uint64(stat.Nlink) } } fmt.Println(nlink) }</code>
以上がGo でファイルのハードリンク数を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。