Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
joe2017
- Beiträge: 1274
- Registriert: 07.08.2017 14:29:51
Beitrag
von joe2017 » 25.07.2023 10:35:42
Hallo und kurze Frage
ich habe eine einfache if Abfrage mit grep verbunden. Ich prüfe ob ein String in einer Datei steht.
Code: Alles auswählen
if grep -q "test" /path/to/file.txt; then
echo "yes"
else
echo "no"
fi
Wie kann ich Strings prüfen welche aus einer Datei gelesen werden sollen? Also eine Datei mit diveren Strings.
Zuletzt geändert von
joe2017 am 25.07.2023 10:59:54, insgesamt 1-mal geändert.
-
Meillo
- Moderator
- Beiträge: 9241
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 25.07.2023 10:42:45
Btw: Wenn du keine Regulaeren Ausdruecke, sondern fixe Strings pruefen willst, dann solltest du auch noch `-F' verwenden.
Use ed once in a while!
-
joe2017
- Beiträge: 1274
- Registriert: 07.08.2017 14:29:51
Beitrag
von joe2017 » 25.07.2023 10:48:28
Danke.
Ich habe es eben ganz anders gelöst.
Code: Alles auswählen
while read line
do
if grep -q "$line" /path/to/file.txt; then
echo "yes"
else
echo "no"
fi
done < /path/to/file-with-var.txt
-
Meillo
- Moderator
- Beiträge: 9241
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 25.07.2023 10:51:19
Na, das ist aber umstaendlich, wo es mit `-f' ganz direkt und ohne zusaetzliche Komplexitaet geht.
Use ed once in a while!
-
joe2017
- Beiträge: 1274
- Registriert: 07.08.2017 14:29:51
Beitrag
von joe2017 » 25.07.2023 10:58:43
Ich habe nicht gesagt das es besser oder eleganter ist.