Opendir 3 C Función

Opendir 3 C Función
La función OpenDir () ha sido ampliamente conocida por la apertura de algunas transmisiones de directorio como el nombre de un directorio y devolver el puntero a ese directorio en particular. La función OpenDir en el lenguaje de programación C se define en el archivo de encabezado y es parte de la especificación POSIX (Interfaz del sistema operativo portátil). La función OpenDir solo toma un solo argumento, que es un puntero de caracteres. El argumento "nombre" es esencialmente el camino hacia el directorio que abriremos. Si la ruta al directorio especificado no existe o es incorrecta, esta función devuelve nulo. Si la ruta del directorio es correcta y válida, la función OpenDir emite una estructura de directorio de tipo puntero Dir*.

El tipo de datos Dir se utiliza para expresar una secuencia de directorio, aunque el usuario no debe asignarlo. Veremos cómo se usa este método en algunos códigos C en este artículo.

Ejemplo 01:

Usando el editor VIM, produjimos el "OpenDirfile.archivo c ". Puedes elegir cualquier editor, incluido Nano. Cuando el archivo se abre en el editor VIM, escriba el código que se muestra en la siguiente captura de pantalla. El directorio actual que se abrevia como el punto (.) se abre y cierra en el siguiente código:

La salida del código anterior es:

Las funciones para leer y manipular directorios/carpetas están disponibles en el idioma C. Permite que sus programas manejen los archivos y realicen otras operaciones relacionadas con los archivos.

Ejemplo 02:

Ahora, escribimos el código avanzado para comprender el concepto completo y aprender a ejecutarlo y compilarlo. Los archivos de encabezado están incluidos en las dos primeras líneas. Después de eso, se llama la firma de la función principal. Puede ver que recibimos el nombre del directorio de las entradas de línea de comando de la función principal y lo pasamos a la función OpenDir. Dentro de la función de bloque principal, la primera línea es una estructura directa, que es esencialmente una representación del sistema de directorio. Puede contener el número de serie del archivo, así como los nombres de las carpetas que se encuentran en la ruta suministrada.

Definimos una variable de tipo puntero llamada PDIR en la segunda línea del código. Después de eso, hay una declaración condicional que se usa principalmente para verificar si la línea de comando contiene la cantidad correcta de argumentos. Si los valores suministrados no son válidos, imprima el mensaje y salga de la función sin realizar el siguiente código. Si la entrada es correcta, guárdela en la variable PDIR y verifique que no sea nula. Si es nulo, significa que no hay directorio o que la ruta sea incorrecta o ilegal.

En ese caso, se ejecuta la declaración de devolución y el compilador termina la ejecución de las líneas del código a continuación. Si el parámetro PDIR no es nulo, indica que el nombre del directorio proporcionado por el usuario es legítimo y correcto y que el directorio existe, que puede incluir los archivos y carpetas. La función ReadDir se usa dentro del bucle While en las siguientes líneas de código para mostrar los nombres de archivos y carpetas que existen en este directorio. Al final de la línea, cerramos la variable PDIR. Para obtener una lista completa de los archivos que generó en el directorio de trabajo, use el comando "LS". Vea la siguiente pantalla para más detalles:

Después de eso, use el compilador GCC para compilar el archivo C. Si su sistema no tiene un compilador GCC, use el siguiente comando para instalar el compilador en su sistema operativo o máquina virtual:

$ sudo apt actualización
$ sudo apt instalación de construcción esencial

Puede verificar si ya lo ha instalado en su sistema operativo o máquina virtual ejecutando el siguiente comando:

GCC -versión

Ahora, tiene todo lo que necesita para compilar y ejecutar/ejecutar el código C. Para comenzar, use el comando dado en la imagen para construir el código. Después de eso, escriba "GCC" y el nombre del archivo que desea compilar o producir un objeto o archivo de salida para. Si no especifica los argumentos restantes en la línea de comando, la salida se generará y guardará en un "A.Fuera de salida ".

Sin embargo, si desea nombrar su archivo de salida, sea lo que desee, escriba "-O". Luego, escriba el nombre del archivo de salida seguido del ".Extensión de fuera ".

Antes de avanzar, algunas cosas más que debe saber es que en Macintosh y posterior Windows, se usa el término "carpeta". Solía ​​ser un directorio, una lista de archivos guardados en los medios de almacenamiento. Para ejecutar el archivo, simplemente use el siguiente comando que incluye el "./NOMBRE DEL ARCHIVO DE SALIDA.afuera". Como puede ver, si ejecutamos el archivo de salida sin ningún argumento de línea de comando, como una ruta de directorio, recibimos un error que indica que la entrada no es válida.

Cuando ejecutamos el archivo de salida, proporcionamos el nombre del directorio en la siguiente pantalla. Puede ver la lista de archivos y carpetas que existen en el directorio de obras después de presionar la tecla ENTER.

Otra opción para suministrar el nombre del directorio es escribir toda la ruta del directorio o solo la parte de la ruta donde ahora estamos ubicados. En el siguiente ejemplo, suministramos los "trabajos/obras" que incluyen nuestro trabajo actual seguido de trabajos, y luego dentro de la carpeta de obras.

Como puede ver en el siguiente ejemplo, especificamos un nombre de directorio o carpeta que no existe en el directorio actual donde se encuentra nuestro archivo de salida. Si PDIR devuelve NULL, mostramos o informamos un error que indica que el directorio no se puede abrir.

Conclusión

Este artículo trata sobre el uso de la función OpenDir () de C en Kali Linux con la demostración de su proceso de trabajo. Discutimos los ejemplos simples pero eficientes de C para lograr los resultados requeridos. Las otras funciones de Posix se utilizan para la ayuda lateral en los códigos.