Bul türü f-name "* .htm *" -o -name "* .js *" -o -name "* .txt"
İçin Kısa:
Bul \ (\ ( -tipi f -a -adı "* .htm *" \) -o \
\ ( -adı "* .js *" \) -o \
\ ( -adı "* .txt" \) \
\) -a-izi
Yani, hiçbir eylem belirteci belirtilmediğinden (yalnızca koşullar ), -printkoşullarla eşleşen dosyalar için örtük olarak bir eylem eklenir.
(ve bu arada, bu normal olmayan .jsdosyaları ( -type fsadece .htmdosyalar için geçerlidir ) yazdıracaktır ).
Süre:
Bul türü f-name "* .htm *" -o -name "* .js *" -o -name "* .txt" \
-exec sh -c 'echo "$ 0"' {} \;
İçin Kısa:
Bul \ ( -tipi f -a -adı "* .htm *" \) -o \
\ ( -adı "* .js *" \) -o \
\ ( -adı "* .txt" -a -exec sh -c 'echo "$ 0"' {} \; \)
İçin find(birçok dilde benzeri), VE ( -a; atlanmış zaman örtük) üzerinde önceliğe sahiptir VEYA ( -o) ve açık bir eylem yüklemi (burada ekleyerek -exec) iptal -printyukarıda görülen örtülü eylem. İşte, istiyorsun:
find . -type f \( -name "*.htm*" -o -name "*.js*" -o -name "*.txt" \) \
-exec sh -c 'echo "$0"' {} \;
Veya:
find . -type f \( -name "*.htm*" -o -name "*.js*" -o -name "*.txt" \) -exec sh -c '
for i do
echo "$i"
done' sh {} +
shDosya başına bir çalıştırmayı önlemek için .
*.js**.txt