Cómo usar operadores de prueba de archivos Bash en Linux

Crear un archivo de prueba

Los operadores de prueba de archivos se utilizan en Linux para comprobar y verificar los atributos de los archivos, como la propiedad o si son un enlace simbólico. Cada operador de prueba tiene un propósito específico. Los operadores más importantes son -e y -s. En este artículo, aprenderá a probar archivos usando la instrucción if seguida de algunos operadores de prueba importantes en Linux.

En este artículo cubriremos los siguientes operadores de prueba:

  • Si -e operador de prueba
  • Si -s operador de prueba
  • Operador de prueba if -d
  • Si -h operador de prueba
  • Si -r operador de prueba
  • Si -O operador de prueba

Uso del operador if -e

El objetivo clave de usar el operador de prueba if-e en Centos 8 es verificar si el archivo específico reside en el directorio o no. Entonces, si desea verificar la existencia de un archivo usando if-e, debe seguir los pasos a continuación:

Cree dos nuevos archivos con los nombres Test.txt y FileTestOperators.sh respectivamente. La extensión .sh pertenece al archivo bash. Puede crear ambos en el directorio de inicio directamente o con el siguiente comando:

$ touch Test.txt
$ touch FileTestOperators.sh

Si desea autenticar si el archivo se crea o no, use el siguiente comando:

$ ls -l Test.txt

Crear un archivo de prueba

Crear archivo de operadores

Puede ver que ambos archivos se crean en el directorio de inicio.

Archivos en el explorador de archivos

Abra el archivo FileTestOperators.sh y escriba el script en él como se muestra en la imagen a continuación. Inicializamos un archivo de variables y le pasamos el archivo Test.txt como un valor. En la declaración If, tenemos el operador -e que se usa para confirmar la existencia del archivo Test.txt usando el archivo variable.

Guión 1

Ejecute el comando mencionado a continuación para verificar la existencia del archivo:

$ bash FileTestOperators.sh

Como el archivo existe en el directorio, la salida ser√° True.

ejecutar secuencia de comandos 1

Uso del operador if -s

El propósito de usar el operador de prueba if-s en Centos 8 es verificar si el archivo especificado existe y está vacío o no. Entonces, si desea verificarlo usando if-e, debe seguir los pasos a continuación:

Usaremos los mismos archivos con un cambio menor en el archivo FileTestOperators.sh. Solo tiene que cambiar el operador -s en lugar de -e en la declaración if.

guion 2

Ejecute el comando mencionado a continuación para verificar si el archivo está vacío o no:

$ bash FileTestOperators.sh

Como el archivo está vacío, la salida generada por el operador -s es falsa

Ejecutar secuencia de comandos 2

Ahora debe agregar algo de texto en el archivo Test.txt para modificar el resultado, como se muestra en la imagen a continuación.

archivo de prueba

Vuelva a ejecutar el comando mencionado a continuación:

$ bash FileTestOperators.sh

Como el archivo no está vacío esta vez, la salida generada por el operador -s será True como se muestra en la imagen.

Ejecutar prueba de nuevoAnuncio publicitario

También puede usar los siguientes dos comandos para verificar que el archivo esté vacío:

$ cat Test.txt
$ file Test.txt

El archivo está vacío

Uso del operador if -d

El objetivo de usar el operador de prueba if-d en Centos 8 es verificar que el archivo específico sea en sí mismo un directorio o no. Entonces, si desea verificarlo usando if-d, debe seguir los pasos mencionados a continuación:

Aquí, nuevamente estamos usando los mismos archivos con un ligero cambio en el archivo bash FileTestOperators.sh. Tenemos que cambiar el operador -s con el operador -d en la declaración if como se muestra en la imagen de abajo.

guión de prueba 4

Entonces, ejecuta el comando mencionado a continuación para verificar si el archivo es un directorio o no:

$ bash FileTestOperators.sh

Como sabemos, el archivo Test.txt no es un directorio, por eso el operador -d genera False Test.txt no es un directorio, como se muestra en la imagen a continuación.

ejecutar prueba

Uso del operador if -h

El operador de prueba if-h se usa para verificar si el archivo es un enlace simbólico (suave) o no. Entonces, si desea verificar la existencia de un archivo usando if-h, debe seguir los siguientes pasos:

Cree un nuevo archivo con el nombre SymbolicFile.sh. Puede crearlo en el directorio de inicio directamente o con el siguiente comando:

$ touch SymbolicFile.sh

prueba de archivo

Puede ver el archivo SymbolicFile.sh en el directorio de inicio como se muestra en la imagen a continuación.

Enlace simbólico

Puede listar todos los directorios y archivos usando el comando ls. Puede ver que el archivo SymbolicFile.sh también aparece como se muestra en la imagen.

$ ls ‚Äďl

enlace simbólico

Cree un enlace simbólico usando un comando de enlace simple. En este comando, -s hace referencia a un enlace suave, SymbolicFile.sh es un archivo cuyo enlace se creará y NewSymbolicFile.sh es un enlace simbólico.

$ ln -s SymbolicFile.sh NewSymbolicFile.sh

Prueba de enlaces simbólicos

Nuevamente enumere todos los directorios y archivos. Puede ver que se ha creado un vínculo suave.

Ejecutar prueba

Entonces, nuevamente estamos usando el archivo bash FileTestOperators.sh con un ligero cambio. Cambie el operador -d con el operador -h en la declaración if. Esta vez también tenemos que cambiar el nombre de un archivo. Tenemos que usar un archivo que sea un enlace simbólico, por ejemplo, NewSymbolicFile.sh.

Buscar enlaces simbólicos

Puede ver ambos archivos en la siguiente imagen.

archivos

Ahora ejecuta el siguiente comando:

$ bash FileTestOperators.sh

Como sabemos, el archivo NewSymbolicFile.sh es un enlace simbólico, es por eso que el operador -h genera True NewSymbolicFile.sh es un enlace simbólico, como se muestra en la imagen a continuación.

Ejecutar prueba de enlace simbólico

Uso del operador if -r

El operador de prueba if -r se utiliza para comprobar la legibilidad del archivo, por ejemplo, si el archivo es legible o no. Entonces, si desea verificarlo usando if-r, debe seguir estos pasos:

Nuevamente, estamos usando el archivo bash Test.txt y FileTestOperators.sh con un ligero cambio. Cambie el operador -h por el operador -r en la instrucción if y asigne el archivo Test.txt como valor al archivo de variables.

Comprobar si el archivo es legible

Ahora ejecuta el siguiente comando:

$ bash FileTestOperators.sh

Como sabemos que el archivo Test.txt es legible, el operador -r genera ¬°Verdadero! Test.txt es legible.

Ejecutar prueba de legibilidad

Nota: Use los operadores -w y -x respectivamente para verificar si el archivo es escribible y ejecutable o no.

Uso del operador if -O

El propósito del operador de prueba if -O se usa para verificar si el archivo es propiedad de un usuario actual o no. Entonces, para verificarlo usando if-O, debe seguir estos pasos:

Nuevamente, estamos usando el archivo bash Test.txt y FileTestOperators.sh con un peque√Īo cambio. Cambie el operador -r por el operador -O en la instrucci√≥n if y asigne el archivo Test.txt como valor al archivo de variables.

prueba de propiedad en bash

Ahora ejecuta el siguiente comando:

$ bash FileTestOperators.sh

Como sabemos que el archivo Test.txt ya es propiedad del usuario actual, el operador -O genera True Test.txt es propiedad de un usuario actual.

Ejecutar prueba

Conclusión

En este artículo, aprendió sobre los operadores de prueba de archivos más importantes y diferentes y su funcionamiento en Centos 8. Espero que ahora pueda crear archivos, verificar la existencia de archivos, verificar la legibilidad de los archivos, verificar la propiedad de los archivos, y haciendo enlaces blandos. Los usuarios pueden sentirse a gusto después de seguir este artículo a fondo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *