ディレクトリ、通常のファイル、およびシンボリックリンクのファイルシステムを検索するために、Cで学校の課題を書いています。今のlstat
ところ、アイテムに関する情報を取得するために使用します。
lstat
fstat
では、とstat
システム コールの違いは何ですか?
私も探してstat vs lstat vs fstat
いましたが、この質問に対する回答は既にありますが、次のようにフォーマットされていることを確認したいと思います。
lstat()
stat()
pathname がシンボリック リンクの場合、参照先のファイルではなく、リンク自体に関する情報を返すことを除いて、と同じです。
fstat()
stat()
情報を取得するファイルが (ファイル名ではなく) ファイル記述子によって指定されることを除いて、と同じです。
次をグーグルで検索: lstat v fstat v stat
提供される最初のリンクは、これらの違いを説明するマニュアルページです: http://manpages.ubuntu.com/manpages/hardy/man2/stat.2.html
ページにリストされているのは、次の簡単な答えです。lstat() は stat() と同じですが、path がシンボリック リンクである場合、参照先のファイルではなく、リンク自体が stat される点が異なります。fstat() は、stat されるファイルがファイル記述子 fd によって指定されることを除いて、stat() と同じです。