Ich möchte Grep in einem Bash-Skript verwenden, um die Zeile mit nur dem Wort "Version" aus einer Datei zu bekommen, das Problem ist, dass ein paar Zeilen weiter unten in der Datei, die ich will Skript, um darin zu suchen, ist eine andere Linie mit dem Wort "dlversion".Grep muss mit einem bestimmten Wort übereinstimmen
Ich bin der grep in einen Schnittbefehl kochend, wird die Ausgabe als Variable
gespeichert werden Das Problem ist, dass es entweder nichts in die Variable speichert oder es speichert beide Linien habe ich bereits mehrere Methoden ausprobiert das habe ich gefunden, obwohl keiner von ihnen funktioniert hat.
grep -Fx version /path/to/file.txt | cut -c9-
output = nichts
grep '^version$' /path/to/file.txt | cut -c9-
output = nichts
grep "version" /path/to/file.txt | cut -c9-
output = beide Leitungen
auch versucht
grep -w "version " /path/to/file.txt | cut -c9-
output = nichts
Ich habe auch versucht, -F, -x zu verwenden, was auch dazu führte, dass die Variable keinen Wert hatte.
Es scheint, dass die Verwendung von Grenzen Ihnen helfen könnte: "\ bversion \ b". – Dominique
Danke, ich habe den 'cut' geändert, um beim ersten Zeichen zu beginnen, dann habe ich den Ausgang des ersten' grep' durch einen zweiten mit '-v' gefiltert, der die restlichen Buchstaben herausgefiltert hat und es funktioniert. –