Perl sysopen 函数
描述
此函数等效于底层 C 和操作系统调用 open()。 打开由 FILENAME 指定的文件,将其与 FILEHANDLE 关联。 MODE 参数指定应如何打开文件。 MODE 的值取决于系统,但有些值是历史设置的。 值 0、1 和 2 分别表示只读、只写和读/写。 支持的值在 Fcntl 模块中可用,并总结在下表中。
注意 FILENAME 严格来说是一个文件名; 不解释内容(与打开不同),打开模式由 MODE 参数定义。
如果必须创建文件,并且在 MODE 中指定了 O_CREAT 标志,则使用 PERMS 权限创建文件。 PERMS 的值必须以传统的 Unix 样式的十六进制指定。 如果没有指定 PERMS,那么 Perl 使用默认模式 0666(在用户/组/其他上读/写)。
Flag Description O_RDONLY Read only. O_WRONLY Write only. O_RDWR Read and write. O_CREAT Create the file if it doesn.t already exist. O_EXCL Fail if the file already exists. O_APPEND Append to an existing file. O_TRUNC Truncate the file before opening. O_NONBLOCK Non-blocking mode. O_NDELAY Equivalent of O_NONBLOCK. O_EXLOCK Lock using flock and LOCK_EX. O_SHLOCK Lock using flock and LOCK_SH. O_DIRECTOPRY Fail if the file is not a directory. O_NOFOLLOW Fail if the last path component is a symbolic link. O_BINARY Open in binary mode (implies a call to binmode). O_LARGEFILE Open with large (>2GB) file support. O_SYNC Write data physically to the disk, instead of write buffer. O_NOCTTY Don't make the terminal file being opened the processescontrolling terminal, even if you don.t have one yet.
语法
以下是此函数的简单语法 −
sysopen FILEHANDLE, FILENAME, MODE, PERMS sysopen FILEHANDLE, FILENAME, MODE
返回值
此函数在失败时返回 0,在成功时返回 1。