CHDIR(2) FreeBSD システムコールマニュアル CHDIR(2)
名称
chdir, fchdir − 現在の作業ディレクトリを変更する |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <unistd.h> int |
chdir(const char *path); int |
fchdir(int fd); |
解説 |
path 引数は、ディレクトリのパス名を指します。 chdir() システムコールに よって、指定されたディレクトリが現在の作業ディレクトリ、すなわちスラッ シュ ‘/’ で開始しないパス名のパス検索の開始点になります。 fchdir() システムコールによって、 fd が参照するディレクトリが現在の作業 ディレクトリ (スラッシュ ‘/’ で開始しないパス名のパス検索の開始点) になり ます。 ディレクトリが現在の作業ディレクトリになるためには、プロセスがそのディレ クトリへの実行 (検索) アクセス許可を持っている必要があります。 |
戻り値
成功して終了したときには値 0 を返します。そうでない場合、値 -1 が返され、 グローバル変数 errno が設定されてエラーを示します。 |
エラー
次のうち 1 つ以上が真の場合、 chdir() システムコールの処理は失敗し、現在 の作業ディレクトリは変更されません: |
[ENOTDIR]
パスの構成要素中にディレクトリ以外のものが含まれていま す。 [ENAMETOOLONG] [ENOENT] [ELOOP] [EACCES] [EFAULT] [EIO] 次のうち 1 つ以上が真の場合、 fchdir() システムコールの処理は失敗し、現在 の作業ディレクトリは変更されません: [EACCES] [ENOTDIR] [EBADF] 関連項目 |
規格
chdir() システムコールは ISO/IEC 9945-1:1990 (‘‘POSIX.1’’) に適合していま す。 |
歴史
chdir() システムコールは Version 7 AT&T UNIX で登場しました。 fchdir() シ ステムコールは 4.2BSD で登場しました。 FreeBSD 10.0 December 11, 1993 FreeBSD 10.0 |