El enfoque de esta guía es discutir la existencia de un archivo en su sistema a través de scripts bash:
Cómo verificar la existencia del archivo usando scripts bash:
1) Ingresando el nombre del archivo en la terminal:
En primer lugar, necesitamos crear un archivo de script bash, use el comando que se menciona a continuación:
$ touch archivo de prueba.shEl nombre del archivo que creé es "testfile.sh ”, el“.sh ”indica el archivo de script de shell:
Abra el "archivo de prueba.sh "en cualquier editor de texto. Luego escriba el script, guárdelo presionando "guardar".
Una forma es buscar un archivo solicitando un nombre de archivo al usuario en la terminal.
Usar "-F"Para comprobar la existencia del archivo.
Escribe el siguiente guión:
#!/ bin / bashecho "Ingrese su nombre de archivo"
leer newfile1
si [-f "$ newfile1"]
luego
echo "Archivo encontrado"
demás
echo "El archivo no se encuentra"
fi
Regrese a la terminal y ejecute el archivo para imprimir la salida:
./Nombre del archivo.shEl mensaje de permiso denegado se mostraría en la terminal.
Hágalo ejecutable ejecutando el comando mencionado a continuación:
$ chmod + x archivo de prueba.sh
Ingrese el nombre del archivo e imprimirá la salida:
2) Ingresando el nombre del archivo mientras escribe el script:
Otra forma de encontrar un archivo dando el nombre del archivo mientras escribe el script. Tenemos tres formas de comprobar la disponibilidad del archivo. El primero está usando el comando "prueba", el segundo está usando "si" con una expresión entre corchetes, y el tercero también está usando "si" pero con corchetes dobles como se indica a continuación:
- "Prueba EXPRESIÓN."
- "Si [EXPRESIÓN]"
- "Si [[EXPRESIÓN]]"
Entendamos con ejemplos:
1) prueba [Expresión]
Copie el script dado y péguelo en el editor, guárdelo:
nombre de archivo = archivo1
si prueba -f "$ nombre de archivo";
luego
echo "$ archivo ha encontrado."
demás
echo "$ archivo no se ha encontrado"
fi
Producción:
Como no existe ese archivo en mi directorio, el código muestra el mensaje "El archivo no se encuentra".
2) si [Expresión]
Copie el siguiente script para verificar si el archivo existe o no:
#!/ bin / bashnombre de archivo = myfile.TXT
if [-f "$ nombre de archivo"];
luego
echo "$ nombre de archivo ha encontrado."
demás
echo "no se ha encontrado el nombre del archivo"
fi
Producción:
3) si [[Expresión]]
Copie el script escrito a continuación y péguelo en la terminal:
#!/ bin / bashnombre de archivo = archivo de prueba
if [[-f "$ nombre de archivo"]];
luego
echo "$ nombre de archivo ha encontrado."
demás
echo "$ nombre de archivo no se ha encontrado"
fi
Producción:
Para comprobar el directorio:
3) Ingresando el nombre del directorio mientras escribe un script
Utilizar el "-D"Marca para comprobar la existencia de un directorio.
En la secuencia de comandos que se menciona a continuación, "dir11" es la variable en la que almacena el archivo que está encontrando; en este ejemplo, quiero comprobar que el nombre del directorio "testDir" existe o no.
#!/ bin / bashdir11 = testDir
si [-d "$ dir11"]
luego
echo "Directorio encontrado"
demás
echo "No se ha encontrado el directorio"
fi
Producción:
2) Ingresando el nombre del archivo en la terminal:
Cuando ejecuta el comando en la terminal para verificar si el directorio existe o no, debe ingresar el nombre del directorio que está buscando:
echo "escribe el nombre de tu directorio."
leer Dir1
si [-d "Dir1"]
luego
echo "se ha encontrado el directorio"
demás
echo "directorio no encontrado"
fi
Producción:
Verificando el archivo sin usar la declaración "si":
El comando "test" se puede ejecutar sin la instrucción "if". Solo mostrará la salida si el archivo existe; de lo contrario, no habría salida:
Escribir guión:
- prueba -f myfile.txt && echo "se ha encontrado el archivo"
- [-f miarchivo.txt] && echo "Se ha encontrado el archivo $."
- [[-f miarchivo.txt]] && echo "Se ha encontrado el archivo $."
Producción:
Verificando el directorio sin usar la declaración "if":
Utilice las declaraciones que se mencionan a continuación para comprobar que un directorio existe o no:
- [[-d testDir]] && echo "el directorio existe"
- 2) [-d testDir] && echo "el directorio existe"
Producción:
Comprobación de varios archivos / directorios:
1) Comprobación de varios archivos con declaraciones "si":
Use la marca "-a" para verificar la existencia de varios archivos en lugar de usar declaraciones "if / else" anidadas:
if [-f archivo_nuevo.txt -a -f archivo nuevo.TXT ]; luego
echo "Ambos archivos existen."
fi
Otra forma es:
#!/ bin / bashsi [[-f archivo_nuevo.txt && -f archivo nuevo.TXT ]]; luego
echo "Ambos archivos existen."
fi
Producción:
2) Comprobación de varios archivos sin utilizar la declaración "si":
Utilice la siguiente declaración para verificar varios archivos simultáneamente 1 sin usar "si":
- [[-f archivo_nuevo.txt && -f archivo nuevo.txt]] && echo “Ambos archivos salen."
- [[-f archivo_nuevo.txt && -f archivo nuevo.txt]] && echo “Ambos archivos salen."
Producción:
Conclusión:
Este artículo ha mostrado cómo usar scripts bash para verificar un archivo o directorio. Usamos diferentes opciones para verificar la disponibilidad de un archivo. En primer lugar, usamos el comando "prueba" con diferentes banderas. Luego aprendimos el uso de "if", anidado "if-else" y sin las declaraciones "if" para verificar el archivo o directorio. También analizamos cómo comprobar varios archivos o directorios.