スポンサーリンク

REALPATH(3) FreeBSD ライブラリ関数マニュアル REALPATH(3)

名称

realpath − 正規の絶対パス名を戻す

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <sys/param.h>
#include <stdlib.h>

char *

realpath(const char *pathname, char resolved_path[MAXPATHLEN]);

解説

realpath() 関数は、 pathname のすべてのシンボリックリンク、余分な ‘‘/’’ キャラクタ、 /.//../ のリファレンスを分析し、 resolved_path が参照す るメモリに絶対パス名をコピーします。 resolved_path 引数は、少なくとも MAXPATHLEN キャラクタを保存できるバッファを参照している必要があります。

realpath() 関数は、絶対パスと相対パスの両方を分析し、 pathname に対応する 絶対パス名を戻します。 pathname の最後のコンポーネント以外は、 readpath() を呼び出したときに存在している必要があります。

戻り値

realpath() 関数は、問題がなければ resolved_path を戻します。エラーが発生 した場合、 realpath() は NULL を戻し、問題となったパス名を resolved_path に入れます。

エラー

realpath() 関数がエラーとなると、ライブラリ関数 chdir(2), close(2), fchdir(2), lstat(2), open(2), readlink(2), getcwd(3) で指定されているエ ラーを外部変数 errno に設定することがあります。

警告

この realpath() の実装は、Solaris での実装とは多少異なります。 4.4BSD の バージョンは常に絶対パス名を戻しますが、Solaris での実装は、ある状況下 で、相対パス名が指定されると相対パス名を戻します。

関連項目

getcwd(3)

歴史

realpath() 関数は、 4.4BSD ではじめて登場しました。

FreeBSD 10.0 February 16, 1994 FreeBSD 10.0

スポンサーリンク