Dateiendungen finden

Hier ein kleines Bash-Script um alle Dateiendungen in einem Verzeichnis und allen Unterverzeichnissen zu finden.

#!/bin/bash
find . -type f -printf '%f\n' | \
grep -v -e '^\.' -e '\.$' | \
grep '\.' | \
grep -o '[^\.]*$' | \
sort -uf

  1. Finde alle Dateien und gib nur den Dateinamen aus
  2. Filtere alle Dateinamen, die nicht mit einem Punkt beginnen oder enden
  3. Filtere alle Dateinamen, die einen Punkt beinhalten
  4. Extrahiere alles nach dem letzten Punkt
  5. Sortiere das Ergebnis (-f für no-case)
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s