2010-12-11 7 views

Antwort

3

könnten Sie finden Verwendung:

find -name '*.txt' -exec head {} \; 
0

Eine weitere Möglichkeit ist die Verwendung -

find -name '*.txt' | xargs head 

Bitte beachten Sie, dass -name nicht in in allen Umgebungen arbeiten müssen In diesem Fall können Sie

find . | grep ".txt" | xargs head 
verwenden 10
+2

Ich habe noch nie gehört, dass '-name' nicht funktioniert, aber es ist nicht ungewöhnlich, dass sich' find' über fehlende Argumente bei Verwendung des zweiten Formulars beschweren (zumindest in alten Versionen). –

1

Wenn Ihre Shell unterstützt (zsh der Fall ist, nicht sicher über den Rest), können Sie ** Syntax:

head **/*.txt 
+1

Dies wird auch unterstützt in Bash 4 mit 'shopt -s globstar' oder mit' ksh' mit 'set -o globstar'. –

0

Ich habe versucht, das Gleiche zu tun; Hier ist, was bei mir funktioniert hat (ich gebe die Antwort auf die Datei headtest.txt aus). Beachten Sie, dass sich dies durch das aktuelle Verzeichnis und die Unterverzeichnisse bewegt.

find . -type f -exec head '{}' \; >> headtest.txt 

Hoffe, das hilft.

Verwandte Themen