REALPATH(3) FreeBSD ライブラリ関数マニュアル REALPATH(3)
名称
realpath − 正規の絶対パス名を戻す |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <sys/param.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 での実装は、ある状況下 で、相対パス名が指定されると相対パス名を戻します。 |
関連項目
歴史
realpath() 関数は、 4.4BSD ではじめて登場しました。 FreeBSD 10.0 February 16, 1994 FreeBSD 10.0 |