Sie haben doppelte Anführungszeichen verwenden (""
) wie diese
grep "total energy =" /your/file
wo Sie /your/file
mit dem Namen der Datei ersetzen. Lesen Sie difference between ""
and ''
.
durch alle Dateien im aktuellen Verzeichnis suchen, möchten Sie den nächsten Befehl
find ./ -type f -exec grep "total energy =" {} \;
Was dies tut, ist es zuerst alle Dateien im aktuellen Verzeichnis findet mit find
(./
aktuellen Verzeichnis bezeichnet -type f
steht nur für Dateien). Dann führt es grep
Suche nach "total energy ="
. \
bedeutet, wo das Ende von -exec
ist, falls es noch etwas anderes geben würde.
Wenn Sie nur über Dateien durchsuchen möchten, die wie frame[number].inp
sind, können Sie regex mit find
verwenden:
find ./ -regextype posix-extended -regex '.*?\.inp' -exec grep "total energy =" {} \;
Mögliche Duplikat [Grep für Sonderzeichen in Unix] (https://stackoverflow.com/ Fragen/12387685/grep-for-special-Zeichen-in-Unix) – GhostCat