Função Perl sysopen
Descrição
Esta função é equivalente ao C subjacente e à chamada open () do sistema operacional. Abre o arquivo especificado por FILENAME, associando-o a FILEHANDLE. O argumento MODE especifica como o arquivo deve ser aberto. Os valores de MODE dependem do sistema, mas alguns valores são definidos historicamente. Valores de 0, 1 e 2 significam somente leitura, somente gravação e leitura / gravação, respectivamente. Os valores suportados estão disponíveis no módulo Fcntl e são resumidos na Tabela abaixo.
Observe que FILENAME é estritamente um nome de arquivo; nenhuma interpretação do conteúdo ocorre (ao contrário de abrir), e o modo de abertura é definido pelo argumento MODE.
Se o arquivo tiver que ser criado e o sinalizador O_CREAT tiver sido especificado em MODE, o arquivo será criado com as permissões de PERMS. O valor de PERMS deve ser especificado em hexadecimal estilo Unix tradicional. Se PERMS não for especificado, então Perl usa um modo padrão de 0666 (leitura / gravação no usuário / grupo / outro).
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.
Sintaxe
A seguir está a sintaxe simples para esta função -
sysopen FILEHANDLE, FILENAME, MODE, PERMS
sysopen FILEHANDLE, FILENAME, MODE
Valor de retorno
Esta função retorna 0 em caso de falha e 1 em caso de sucesso.