Bash Compruebe si el archivo existe
¿Está trabajando con scripts de shell y ¿Intento? Este articulo es para tí. En algún momento de su trabajo, deberá verificar su sistema de archivos. ¿Sigue ahí su directorio? ¿No está seguro de si su archivo ya existe? Estas son las dos preguntas esenciales que necesitará saber.
¿Cómo sabe si su directorio o archivo existe con Bash? La respuesta es simple, haz una «Prueba de Bash». Hoy te enseñaremos cómo hacerlo. Al final de este artículo, deberías comprobar por ti mismo si todavía existe un archivo o directorio en tu script Bash.
Pruebe si existe un archivo normal
La primera preocupación que debe abordar es si su archivo normal o el directorio todavía existe en la secuencia de comandos Bash. Para responder a esta pregunta, deberá ejecutar el comando de prueba.
Si desea verificar si su archivo existe, deberá usar el comando «-f ”Opción de archivo. Asegúrese de indicar qué archivo está intentando buscar.
Usaremos «/ user / commrev” como archivo. ejemplo en todo el artículo.
Entonces, por ejemplo, estás intentando probar si existe el archivo «/ user / commrev». En su script bash, tendrá que escribirlo como:
if ].
Si el archivo existe, el siguiente símbolo del sistema que verá debería ser,
else echo "<file> exists on your file system."
Usando términos cortos
También puede directamente pruebe su shell bash usando términos cortos existentes. Utilice la misma opción de enlace simbólico «-f» y escriba el comando que desea ejecutar. Por lo tanto, deberá abrir el comando de prueba y escribir lo siguiente como
if ] && echo "This file exists!"
Comprobando si existe más de un archivo
En caso de que desee comprobar si existe más de un archivo, puede Al igual que en las situaciones anteriores, use «-f» y pruebe si un archivo que está tratando de localizar todavía está allí. Separe los archivos mediante el operador «& &”.
Por ejemplo, desea probar si 1 archivo 1 y archivo 2 existe. Puede escribirlo en el comando de prueba de la siguiente manera:
if ] && ] thenecho "file exists!" fi.
¡Fácil! Asegúrese de recordar el comando «-f» y nombre de archivo que está buscando.
Compruebe si un archivo no existe
El siguiente que Necesitaré aprender a verificar si un archivo ya no existe. El comando es fácil de aprender y recordar.
Usando el script Bash, use el «!» y siga con la opción «-f», y el archivo que está intentando verificar.
Por ejemplo:
if ] then echo "<file> does not exist on your file system. "
También puede utilizar formularios más cortos, similares al ejemplo anterior. Podrá probar rápidamente si un archivo existe o no en su terminal. Por lo tanto, puede escribirlo en el comando de prueba como
] && echo "This file does not exist!" && echo "File does not exist!"
Como alternativa, también puede usar el ”| | ”Operador. Ejecutará el comando derecho en caso de que falle el comando izquierdo. Puede escribirlo de la siguiente manera:
] | | echo "File does not exist!"
¡Fácil! ¡Podrás verificar si un archivo existe en Bash o no!
Verifica si el directorio existe
¿Cómo sabes si tus directorios todavía existen en Bash? Bueno, necesitará usar y recordar la opción de comando del enlace simbólico «-d». Siga este comando con el directorio que está tratando de buscar.
if ]thenecho " FILE DIRECTORY exist ." fi
A modo de ilustración, desea probar en Bash si / user / commrev todavía existe en el directorio. Se verá así:
#!/bin/bash if ] thenecho "/user/commrev exists on your file system."
Cuando escribe este comando en Bash, la salida debe verse como $ / etc. Existe en su sistema de archivos.
Usando short términos
De manera similar a cómo puede usar términos cortos para probar si un archivo existe en Bash, también puede hacer lo mismo para el directorio. En el shell de bash, puede usar términos cortos para verificar si El directorio aún existe.
Para que lo pruebes, usarás la opción «-d». Asegúrese de ponerlo entre corchetes y siga con el comando que desea ejecutar. Debería verse algo como esto:
] && echo "FILE directory exists!" && echo "This FILE directory exists!"
Quiere probar y verificar si / user / commrev existe en su directorio. Puede usar el término corto y escribirlo como
" && echo "This directory exists!"
Cómo crear un script Bash
Recordar todos esos comandos y opciones puede ser un desafío para algunos, especialmente si usted es el tipo de persona que verifica varias veces si existe un archivo en particular o si todavía existe un directorio en el sistema. . Bueno, ¡podría ser útil para usted aprender a crear un script que pueda hacer la tarea por usted, automáticamente!
Le enseñaremos cómo crear un script bash que pueda verificar varios nombres de archivo.Ya no tendrá que seguir escribiendo el comando.
Con chmod, puede crear fácilmente un nuevo script bash y ejecutarlo. Se verá así:
$ mkdir -p ~/bin $ cd ~/bin && touch check_file && chmod u+x check_file && vi check_file
Generalmente, si está comenzando a verificar si su archivo existe, el contenido del script será así:
Antes de salir de Bash, asegúrese de guardar su script. Agregue la carpeta «bin» y agréguela al entorno PATH. Se verá así:
$ export PATH="~/bin:$PATH" $ printrev PATH ~/bin: /usr/local/sbin: /usr/local/bin: /usr/sbin: /usr/bin: /sbin: /bin
¡Puede acceder a él desde cualquier parte del sistema! Incluso puede extraer su script y verificar si su archivo existe o no. ¡Listo! No es necesario que siga abriendo su comando de prueba.
Final Palabras
¡Hoy aprendiste a verificar y probar si tu archivo existe o no en tu Bash!
Usando la prueba de bash y la prueba de shell de bash, para términos breves, ¡Podrás encontrarlos! ¡Encuentra uno o dos archivos en poco tiempo! ¡También aprendiste cómo probar si un directorio todavía existe!
Y finalmente, te enseñamos cómo hacer la vida un poco mejor para ti. Le enseñamos cómo escribir un script bash completo para verificar si un archivo existe varias veces al mismo tiempo.
Ganó ¡No tiene que preocuparse cuando busque un archivo! Puede esperar a que el programa ejecute su sistema de archivos y le dé su opinión sobre si ile no existe o no.
Ya sea que esté tratando de verificar si existe un archivo o directorio, ¡esperamos haberlo ayudado!