Hoe vind je bestanden met een bepaalde tekst in de Terminal
? Ik wil graag alle bestanden vinden die een bepaalde tekenreeks bevatten. Hoe zou u dat doen in de Terminal?
grep -r 'text goes here' path_goes_here
brew install ack
ack "text goes here"
find . |grep "text goes here"
grep -RnslI "text goes here"
Via Ack
Via grep
&001
Ignacio’s antwoord is geweldig en heeft me geholpen om de bestanden met bepaalde tekst te vinden. Het enige probleem waar ik mee te maken had was dat bij het uitvoeren van dit commando alle bestanden werden opgesomd, inclusief één waar het patroon niet te zien was.
No such file or directory
Dit is wat ik zie naast bestanden die het patroon niet bevatten.
Als je in plaats daarvan -s
aan het commando toevoegt, zoals in:grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH DIRECTORY] -s
wordt gebruikt, zal het alleen laten zien welke bestanden het patroon bevatten.
Op dezelfde manier als grep -nr "text pattern" ./ -s
; grep -nr "text pattern" [PATH OF DIRECTORY] -s
wordt gebruikt, wordt het bestand afgedrukt plus het regelnummer, en het voorkomen van het patroon.
Corrigeer me als ik het niet goed begrijp. Referentie: Hoe kan het dat grep geen ‘No such file or directory’ fouten afdrukt?