grep für Text, der vorhanden sein kann oder nicht

grep für Text, der vorhanden sein kann oder nicht

Nehmen wir an, ich habe eine Datei

batman;
robin;
superman;
password = "";
wonderwoman
green lantern

wenn ich prüfen möchte, ob ein passwordGeschenk vorhanden ist, also ob etwas in der eingegeben wurde "". hier ist ein Beispiel dafür

ironman;
hulk;
spiderman;
password = "tonyStark";
black widow
hawkeye

Wie kann ich überprüfen, ob in der Datei ein Kennwort enthalten ist ""?

Das habe ich bisher

x=$(grep -icE "password=\"[a-zA-Z0-9]\"" file.txt)
if [ x -gt 0 ]; then
  echo "There is a password"
fi

Antwort1

if grep -q 'password = "[^"]' filename; then
    echo "password exists"
else
    echo "no password"
fi

Antwort2

Ich würdeumgekehrtes Grep"Passwort = """.

Wenn das Kennwort nichts enthält, werden der Dateiname und die Zeilen angezeigt.

Antwort3

Sie haben die Leerzeichen übersehen. Negieren Sie die Antwort auch, um sie zuverlässiger zu machen

x=$(grep -icE "password[ ]*=[ ]*\"\"" file.txt)
if [ $x -ne 1 ]; then
  echo "There is a password"
fi

Antwort4

c=$(grep -iE "password"  file.txt | cut -d "\"" -f2)

if [ -z "$c" ]; then 
    echo "no password"
fi

ist das gut? Das Ergebnis ist genau das, was ich erwartet habe.

verwandte Informationen