module LargeFile:sig
..end
File operations on large files.
This sub-module provides 64-bit variants of the functions
UnixLabels.LargeFile.lseek
(for positioning a file descriptor),
UnixLabels.LargeFile.truncate
and UnixLabels.LargeFile.ftruncate
(for changing the size of a file),
and UnixLabels.LargeFile.stat
, UnixLabels.LargeFile.lstat
and UnixLabels.LargeFile.fstat
(for obtaining information on files). These alternate functions represent
positions and sizes by 64-bit integers (type int64
) instead of
regular integers (type int
), thus allowing operating on files
whose sizes are greater than max_int
.
val lseek : UnixLabels.file_descr -> int64 -> mode:UnixLabels.seek_command -> int64
See lseek
.
val truncate : string -> len:int64 -> unit
See truncate
.
val ftruncate : UnixLabels.file_descr -> len:int64 -> unit
See ftruncate
.
typestats =
Unix.LargeFile.stats
= {
|
st_dev : |
(* | Device number | *) |
|
st_ino : |
(* | Inode number | *) |
|
st_kind : |
(* | Kind of the file | *) |
|
st_perm : |
(* | Access rights | *) |
|
st_nlink : |
(* | Number of links | *) |
|
st_uid : |
(* | User id of the owner | *) |
|
st_gid : |
(* | Group ID of the file's group | *) |
|
st_rdev : |
(* | Device ID (if special file) | *) |
|
st_size : |
(* | Size in bytes | *) |
|
st_atime : |
(* | Last access time | *) |
|
st_mtime : |
(* | Last modification time | *) |
|
st_ctime : |
(* | Last status change time | *) |
}
val stat : string -> stats
val lstat : string -> stats
val fstat : UnixLabels.file_descr -> stats