Funzione Perl sysopen

Descrizione

Questa funzione è equivalente al C sottostante e alla chiamata del sistema operativo open (). Apre il file specificato da FILENAME, associandolo a FILEHANDLE. L'argomento MODE specifica come aprire il file. I valori di MODE dipendono dal sistema, ma alcuni valori sono impostati storicamente. I valori di 0, 1 e 2 indicano rispettivamente sola lettura, sola scrittura e lettura / scrittura. I valori supportati sono disponibili nel modulo Fcntl e sono riepilogati nella tabella sottostante.

Notare che FILENAME è strettamente un nome di file; non ha luogo alcuna interpretazione del contenuto (a differenza di open) e la modalità di apertura è definita dall'argomento MODE.

Se il file deve essere creato e il flag O_CREAT è stato specificato in MODE, il file viene creato con le autorizzazioni di PERMS. Il valore di PERMS deve essere specificato nel tradizionale esadecimale in stile Unix. Se PERMS non è specificato, Perl usa una modalità predefinita di 0666 (lettura / scrittura su utente / gruppo / altro).

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.

Sintassi

Di seguito è riportata la semplice sintassi per questa funzione:

sysopen FILEHANDLE, FILENAME, MODE, PERMS

sysopen FILEHANDLE, FILENAME, MODE

Valore di ritorno

Questa funzione restituisce 0 in caso di errore e 1 in caso di successo.