RENAME(2) FreeBSD システムコールマニュアル RENAME(2)
名称
rename − ファイル名を変更する |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <stdio.h> int |
rename(const char *from, const char *to); |
解説 |
rename() システムコールによって from と名づけられたリンクを to に変更しま す。 to がすでに存在する場合は、先にこれを削除します。 from と to は同じ タイプでなければならず (両方ともディレクトリであるか、両方ともディレクト リではないか)、同じファイルシステム上に存在している必要があります。 to が既に存在する場合には、操作の途中でシステムがクラッシュしたとしても、 rename() システムコールは to のインスタンスが必ず存在することを保証しま す。 from の最後の構成要素がシンボリックリンクの場合、それが指しているファイル またはディレクトリではなく、そのシンボリックリンクの名前が変更されます。 |
戻り値
関数 rename() は、処理が成功すると値 0 を返します。そうでない場合、値 -1 が返され、グローバル変数 errno が設定されてエラーを示します。 |
エラー
rename() システムコールは次の場合に失敗し、いずれの引数ファイルも影響を受 けません: |
[ENAMETOOLONG]
いずれかのパス名の構成要素が 255 文字を越えているか、 またはいずれかのパス名全体の長さが 1023 文字を越えてい ます。 [ENOENT] [EACCES] [EACCES] [EPERM] [EPERM] [ELOOP] [ENOTDIR] [ENOTDIR] [EISDIR] [EXDEV] [ENOSPC] [EDQUOT] [EIO] [EROFS] [EFAULT] [EINVAL] [ENOTEMPTY] 関連項目 |
規格
rename() システムコールは ISO/IEC 9945-1:1996 (‘‘POSIX.1’’) に適合してい ます。 FreeBSD 10.0 June 4, 1993 FreeBSD 10.0 |