2016-11-23 2 views
0

Wie kann ich den Dateinamen im Befehl Suchen angeben?Wie wird der Dateiname im Befehl find angegeben?

Beispiel:

find . -name "*ESR*" | wc -l 

Ich mag würde die Dateinamen erwähnen, genannt "sample.txt" in der obigen Beispiel Aussage. Könnten Sie mir bitte bei der Syntax helfen?

+0

Es ist nicht ganz klar zu mir, was du von _mention den Dateinamen bedeuten, genannt „sample.txt“ _, weil es trivial ist zu nennen 'wc -l sample.txt', und es sollte nicht sein das wirkliche Problem, denke ich. –

Antwort

2

wc -l tun Dateinamen als Argument:

wc -l sample.txt 

find sollte nur verwendet werden, wenn Sie die Rekursion wollen, auch dann sollte wc im -exec Wirkung von find ausgeführt werden, keine Notwendigkeit, eine zusätzliche anonyme Pipe zu verwenden:

find . -name sample.txt -exec wc -l {} + 

mit bash, können Sie das gleiche mit rekursiven Traverse tun und Globbing (**) über globstar:

shopt -s globstar 
wc -l -- **/sample.txt 
shopt -u globstar 
+0

Danke für Ihre Lösung. – srisriv

+0

Ich muss auch nach einer Zeichenfolge namens ESR im Dateinamen suchen. Kann ich die folgende Aussage verwenden? finden . -name Beispiel.txt "* ESR *" -exec wc -l {} + – srisriv

Verwandte Themen