Eine meiner üblichen Vorgehensweisen besteht darin, alle Dateien eines bestimmten Typs zu prüfen, z. B. alle HTML-Dateien zu finden, in denen das Wort "Rumpus" vorkommt. Um es zu tun, benutze ich
find /path/to -name "*.html" | xargs grep -l "rumpus"
Gelegentlich findwird eine Datei mit einem Leerzeichen im Namen wie zurückgegeben my new file.html. Bei der xargsÜbergabe an greperhalte ich jedoch die folgenden Fehler:
grep: /path/to/bad/file/my: No such file or directory
grep: new: No such file or directory
grep: file.html: No such file or directory
Ich kann sehen, was hier vor sich geht: Entweder die Pipe oder die xargsbehandelt die Leerzeichen als Begrenzer zwischen Dateien. Für das Leben von mir kann ich jedoch nicht herausfinden, wie ich dieses Verhalten verhindern kann. Kann man das mit find+ machen xargs? Oder muss ich einen ganz anderen Befehl verwenden?