CANONICALIZE_FILE_NAME(3)

名前
canonicalize_file_name - 正規化された絶対パス名を返す

書式
#define _GNU_SOURCE /* feature_test_macros(7) 参照 */
#include <stdlib.h>

char *canonicalize_file_name(const char *path);

説明
canonicalize_file_name() 関数は path に対応する正規化された絶対パス名を示すヌル終端された文字列を返す。返された文字列では、シンボリックリンクや、パス名に含まれる . や .. は展開される。連続するスラッシュ (/) 文字はスラッシュ一つに置換される。

返される文字列は canonicalize_file_name() により動的に割り当てられる。呼び出し側は、必要なくなった際にはこの文字列を free(3) で解放すべきである。

canonicalize_file_name(path) は以下と等価である。

    realpath(path, NULL);

返り値
成功すると、 canonicalize_file_name() はヌル終端された文字列を返す。エラーの場合 (例えば、パス名の中に読み込めなかったり存在しないパスが含まれている場合など)、 canonicalize_file_name() は NULL を返し、 errno にエラー内容を示す値を設定する。

エラー
realpath(3) 参照。

属性
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値
canonicalize_file_name() | Thread safety | MT-Safe

準拠
この関数は GNU による拡張である。

関連項目
readlink(2), realpath(3)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。