Wie kann die Standardausgabe an den letzten Befehl übergeben werden?

Wie kann die Standardausgabe an den letzten Befehl übergeben werden?

Ich versuche eine Suche locatenur im aktuellen Verzeichnis. Dazu verwende ich den folgenden Ansatz:

locate file | pwd | xargs grep 

das Problem besteht darin, dass die Ortungsergebnisse in einem Grep verloren gehen. Wie kann dies funktionieren? Ist das möglich?

Antwort1

Der Ort pwdist nicht korrekt. Du kannst es folgendermaßen versuchen:

locate file |  xargs grep `pwd`

aber warum nicht einfachls

ls|grep file

Antwort2

Bei der Suche nach Dateien und Ordnern bevorzuge ich diefindenBefehl, weil er flexibler ist.

#to search only in the current folder (without going to subfolders)
find "$(pwd)" -maxdepth 1 -name "*file*"

#to search in the current folder and subfolders
find "$(pwd)" -name "*file*"

Beachten Sie, dass find "$(pwd)"verwendet wird, um den vollständigen Pfad der von find zurückgegebenen Daten zu drucken. Sie können verwenden find ., wenn Sie einen relativen Pfad zu Ihrem aktuellen Ordner wünschen.

Wenn nichts gefunden wurde, versuchen Sie es -inamestattdessen mit.

verwandte Informationen