問題:
Unix では、どのようにすればよいでしょうかディレクトリを開いたり、関連するエラーを処理したりせずに、システム コールを使用してディレクトリの存在を確認しますか?
回答:
POSIX システムは、この目的のために 2 つの重要な関数を提供します。 ) と lstat()。これらの関数を使用すると、パス名が有効なアクセス可能なオブジェクトを反映しているかどうかを確認し、そのタイプに関する情報を取得できます。
stat() と lstat() の主な違い:
stat() を使用した実装:
#include <sys/stat.h> struct stat sb; if (stat(pathname, &sb) == 0 && S_ISDIR(sb.st_mode)) { // True if pathname is a directory }
追加のファイル タイプ検証:
< の S_IS* マクロの使用sys/stat.h> では、ディレクトリを超えて他のファイル タイプを確認できます:
以上がシステムコールを使用してUnixでディレクトリの存在を確認する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。