O_rdonly, o_wronly y o_rdwr indicadores en lenguaje C

O_rdonly, o_wronly y o_rdwr indicadores en lenguaje C

En la programación, la administración de archivos nos permite almacenar y acceder a cualquier tipo de información, ya sea en bases de datos creadas por el usuario, archivos del sistema para ejecutar programas, archivos ejecutables, etc.

El lenguaje C proporciona, entre otras cosas, la función Open () para crear o abrir archivos. Esta función abre o crea un archivo especificado en los argumentos de entrada por su ruta absoluta o relativa.

Cuando usamos esta función, tenemos la posibilidad de especificar a través de los indicadores de los atributos que el archivo a abrir o crear debe tener, por ejemplo,. si debe ser de solo lectura, lectura-escritura o ambos.

En esto Pista de Linux Artículo, aprenderá cómo especificar los atributos de lectura y escritura de los archivos utilizando el O_rdonly, O_WRONLY, y O_rdwr banderas.

Veremos una descripción teórica de estas banderas y luego implementaremos su uso en ejemplos que incluyen fragmentos e imágenes de código donde establecemos atributos de lectura y escritura con estas banderas.

Descripción de las banderas o_rdonly, o_wronly y o_rdwr.

Las banderas O_rdonly, O_WRONLY y O_rdwr se utilizan en la función del sistema Open () para especificar el modo de apertura de un archivo. Para comprender mejor de qué se tratan estas banderas, veamos la sintaxis junto con una breve descripción de esta función.

int Open (Char *ruta, int flags)

La función Open () abre el archivo especificado en el camino en uno de los siguientes tres modos especificados en el banderas:

O_rdonly: abra o cree un archivo de solo lectura

O_WRONLY: abre o crea un archivo solo de escritura.

O_RDWR: abre o crea un archivo con acceso de lectura y escritura.

La función Open () también usa indicadores adicionales como O_ Create, para crear un archivo o

O_ agregar, para agregarle texto. En los casos en que se usan más de una bandera en el argumento de entrada de los indicadores, se debe realizar una lógica u operación entre ellos.

Estas banderas y las funciones que las usan se definen en el "FCNTL.encabezado. Por lo tanto, debemos incluirlos en nuestro ".archivo c "de la siguiente manera para usarlos:

#incluir

Cómo abrir un archivo con permiso de lectura y escritura utilizando la función Open () y las banderas O_RDONLY, O_WRONLY y O_RDWR en el idioma C.

En este ejemplo, le mostraremos cómo abrir un archivo con permisos de lectura y escritura. Para hacer esto, usamos la función Open (), especificando la ruta y el nombre del archivo en el camino argumento de entrada y el O_rdwr Lee y escribe bandera En los indicadores de entrada. Aquí está el código:

#incluir
#incluir
vacío principal()

int fd open ("documentos/ejemplo.txt ", o_rdwr);

De esta manera, abre () devuelve el descriptor FD que podemos usar con las funciones Read () y escribir () para leer y escribir el archivo.

Cómo crear un archivo y establecer los atributos de lectura y escritura con las banderas O_RDONLY, O_WRONLY y O_RDWR en el idioma C.

En este ejemplo, creamos un archivo llamado "ejemplo.TXT" y guárdelo en el "Documentos" directorio con los atributos de solo lectura utilizando el O_rdonly bandera.

Para hacer esto, agregamos el encabezado "fcntl.h "a nuestro archivo y llame a la función Open () especificando la ruta relativa y el nombre del archivo en el camino argumento de entrada, que en este caso es "Documentos/Ejemplo. TXT".

Como queremos crear el archivo, usamos el O_ CREAT bandera. Y como queremos darle atributos de solo lectura, usamos el O_rdonly bandera. Por lo tanto, necesitamos realizar una lógica u operación entre estas dos banderas. Aquí está el código para este ejemplo:

#incluir
#incluir
vacío principal()

int fd open ("documentos/ejemplo.txt ", o_creat | o_rdonly);

Compilamos el código en la consola de comandos de Linux usando GCC, especificando la ruta y el nombre del ".Archivo C ”y el nombre de la salida, como se muestra a continuación:

~ $ GCC Documents/O_Flags.c -o o_flag

Y ejecutamos la salida con el siguiente comando:

~ $ ./o_flag

Cuando ejecuta este código, la función Open () creará un archivo con atributos de solo lectura. En la siguiente figura, podemos ver el archivo creado en el Administrador de archivos de Linux y sus atributos de solo lectura en sus propiedades.

Si queremos crear un archivo con acceso de lectura y escritura, debemos usar el O_rdwr Bandera como se muestra a continuación:

#incluir
#incluir
vacío principal()

int fd open ("documentos/ejemplo.txt ", o_creat | o_rdwr);

En este caso, la función Open () crea un archivo con atributos de lectura y escritura como se muestra en la siguiente figura.

Conclusión

En esto Pista de Linux Artículo sobre el idioma C, explicamos cómo puede usar el O_rdonly, O_WRONLY, y O_rdwr indicadores para seleccionar el modo abierto de un archivo cuando usa la función Open ().

También le mostramos cómo crear archivos usando la función Open () y la O_ CREAT bandera, y cómo asignar permisos de lectura y escritura realizando una lógica u operación entre él y el O_rdonly y O_WRONLY banderas.

Esperamos que hayas encontrado este artículo útil. Para obtener más artículos sobre el lenguaje C y los consejos de Linux, use el motor de búsqueda en nuestro sitio web.