GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo verificar si el comando de búsqueda no encontró nada?

Cuente el número de líneas de salida y guárdelo en una variable, luego pruébelo:

lines=$(find ... | wc -l)
if [ $lines -eq 0 ]; then
...
fi

Quiere usar buscar comando dentro una condición if , puedes probar este delineador:

 [[ ! -z `find 'YOUR_DIR/' -name 'something'` ]] && echo "found" || echo "not found"

ejemplo de uso :

 [prompt] $ mkdir -p Dir/dir1 Dir/dir2/ Dir/dir3                 
 [prompt] $ ls Dir/
 dir1  dir2  dir3
 [prompt] $ [[ ! -z `find 'Dir/' -name 'something'` ]] && echo "found" || echo "not found"
 not found
 [prompt] $ touch Dir/dir3/something
 [prompt] $ [[ ! -z `find 'Dir/' -name 'something'` ]] && echo "found" || echo "not found"
 found

Exit 0 es fácil con find, exit>0 es más difícil porque eso generalmente solo sucede con un error. Sin embargo, podemos hacer que suceda:

if find -type f -exec false {} +
then
  echo 'nothing found'
else
  echo 'something found'
fi

Linux
  1. Cómo encontrar conexiones SSH activas en Linux

  2. Cómo usar el comando Grep para buscar texto en archivos

  3. Cómo comprobar si un sistema Linux es de 32 o 64 bits

  4. eco:comando no encontrado

  5. Cómo excluir un directorio en find. dominio

Cómo verificar el historial de comandos de Linux por fechas

Cómo usar el comando echo en Bash Scripts en Linux

Cómo comprobar la velocidad de Internet en Linux

Cómo encontrar la dirección IP en la línea de comandos de Linux

Cómo usar el comando echo sin nueva línea

¿Cómo comprobar los puertos abiertos en Linux?