GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie überprüfe ich, ob der Find-Befehl nichts gefunden hat?

Zählen Sie die Anzahl der ausgegebenen Zeilen und speichern Sie sie in einer Variablen, dann testen Sie sie:

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

Sie möchten find verwenden Befehl innen eine if-Bedingung , können Sie es mit diesem Einzeiler versuchen:

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

Anwendungsbeispiel:

 [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 ist einfach mit find, exit>0 ist schwieriger, weil das normalerweise nur mit einem Fehler passiert. Wir können es jedoch möglich machen:

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

Linux
  1. So finden Sie aktive SSH-Verbindungen unter Linux

  2. So verwenden Sie den Grep-Befehl, um Text in Dateien zu finden

  3. So überprüfen Sie, ob ein Linux-System 32-Bit oder 64-Bit ist

  4. So prüfen Sie Berechtigungen mit dem Befehl find

  5. Wie finde ich den Prozess mit maximalen Dateideskriptoren?

So überprüfen Sie den Verlauf der Linux-Befehle nach Datum

So verwenden Sie den Echo-Befehl in Bash-Skripten unter Linux

So überprüfen Sie die Internetgeschwindigkeit unter Linux

So finden Sie die IP-Adresse in der Linux-Befehlszeile

So verwenden Sie den Echo-Befehl ohne Zeilenumbruch

Wie überprüfe ich offene Ports in Linux?