↑ ↓ auswählen, Enter öffnen, Esc schließen

#find

34 Einzeiler mit diesem Stichwort.

Alle Einzeiler mit Tag find

Alle Dateien mit bestimmtem Namen rekursiv löschen

$find /var/www/vhosts/example.com/httpdocs -type f -name 'error_log' -print -delete
destruktivDateisystem

Datei nach Namen suchen

$find /var/www/vhosts -iname '*wp-config*' 2>/dev/null
harmlosDateisystem

Alle Dateien rekursiv auf 644 setzen

$find /var/www/vhosts/example.com/httpdocs -type f -exec chmod 644 {} +
vorsichtRechte und Besitzer

Alle hinterlegten SSH-Schlüssel auf dem Server auflisten

#find / -xdev -path '*/.ssh/authorized_keys' -type f -exec awk 'NF && !/^#/ {print FILENAME ": " $NF}' {} + 2>/dev/null
harmlosSicherheit

Alle symbolischen Links mit Ziel auflisten

$find /var/www/vhosts/example.com -type l -printf '%p -> %l\n'
harmlosDateisystem

Alle Verzeichnisse rekursiv auf 755 setzen

$find /var/www/vhosts/example.com/httpdocs -type d -exec chmod 755 {} +
vorsichtRechte und Besitzer

Besitzer im Plesk-Webspace auf Abo-Benutzer zurücksetzen

#find /var/www/vhosts/example.com/httpdocs -mindepth 1 -exec chown -h webuser:psacln {} +
vorsichtRechte und Besitzer

Bilder rekursiv nach AVIF umwandeln

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) -exec sh -c 'for f; do [ -e "$f.avif" ] || avifenc -s 6 "$f" "$f.avif" >/dev/null; done' sh {} +
vorsichtBilder und Performance

Bilder rekursiv nach WebP umwandeln

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) -exec sh -c 'for f; do [ -e "$f.webp" ] || cwebp -quiet -q 80 "$f" -o "$f.webp"; done' sh {} +
vorsichtBilder und Performance

CSS-, JS- und SVG-Dateien mit gzip und Brotli vorkomprimieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/themes -type f \( -name '*.css' -o -name '*.js' -o -name '*.svg' \) -exec gzip -k -9 -f {} + -exec brotli -k -f {} +
vorsichtBilder und Performance

Dateien älter als X Tage löschen

$find /var/backups/example.com -type f -name '*.tar.gz' -mtime +30 -print -delete
destruktivDateisystem

Dateien finden, die älter als X Tage sind

$find /var/www/vhosts/example.com -type f -mtime +30 -printf '%TY-%Tm-%Td %p\n' | sort | head -100
harmlosDateisystem

Dateien finden, die in einem Zeitraum geändert wurden

$find /var/www/vhosts/example.com/httpdocs -type f -newermt '2026-10-01' ! -newermt '2026-10-08' -printf '%TY-%Tm-%Td %TH:%TM %p\n' | sort
harmlosDateisystem

Dateien mit fremdem Besitzer im Webspace finden

#find /var/www/vhosts/example.com/httpdocs ! -user webuser -ls
harmlosRechte und Besitzer

Dateien mit SUID- oder SGID-Bit finden

#find / -xdev \( -perm -4000 -o -perm -2000 \) -type f -exec ls -l {} + 2>/dev/null
harmlosRechte und Besitzer

Dateien ohne gültigen Besitzer finden

#find /var/www -xdev \( -nouser -o -nogroup \) -ls 2>/dev/null
harmlosRechte und Besitzer

Defekte symbolische Links finden

$find /var/www/vhosts/example.com -xtype l -ls
harmlosDateisystem

Doppelte Dateien anhand der Prüfsumme finden

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f -size +0 -exec md5sum {} + | sort | uniq -w32 --all-repeated=separate
harmlosDateisystem

Für alle beschreibbare Dateien und Ordner finden

$find /var/www/vhosts -xdev -perm -0002 ! -type l -ls 2>/dev/null
harmlosRechte und Besitzer

Für alle beschreibbare Dateien und Verzeichnisse finden

$find /var/www/vhosts -xdev -perm -0002 ! -type l -ls 2>/dev/null
harmlosSicherheit

Gesamtgröße aller Dateien eines Typs berechnen

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f -iname '*.mp4' -printf '%s\n' | awk '{s+=$1; n++} END {printf "%d Dateien, %.1f MB\n", n, s/1048576}'
harmlosDateisystem

Große Bilder in wp-content/uploads finden

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' -o -iname '*.gif' -o -iname '*.webp' \) -size +500k -printf '%s\t%p\n' | sort -rn | head -50 | numfmt --field=1 --to=iec
harmlosBilder und Performance

Größte Dateien in einem Verzeichnis finden

$find /var/www/vhosts -type f -size +500M -exec ls -lh {} + 2>/dev/null | sort -k5 -rh | head -20
harmlosDateisystem

In den letzten Minuten geänderte Dateien finden

$find /var/www/vhosts/example.com/httpdocs -type f -mmin -60 -printf '%TY-%Tm-%Td %TH:%TM %p\n' | sort -r
harmlosDateisystem

JPEG-Bilder verlustfrei mit jpegoptim optimieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' \) -exec jpegoptim --strip-all --preserve {} +
vorsichtBilder und Performance

Kürzlich geänderte PHP-Dateien finden

$find /var/www/vhosts/example.com/httpdocs -type f -name '*.php' -mtime -7 -printf '%TY-%Tm-%Td %TH:%TM %p\n' | sort -r
harmlosSicherheit

Leere Verzeichnisse finden

$find /var/www/vhosts/example.com/httpdocs -mindepth 1 -type d -empty
harmlosDateisystem

Leere Verzeichnisse rekursiv löschen

$find /var/www/vhosts/example.com/httpdocs -mindepth 1 -type d -empty -print -delete
destruktivDateisystem

Nicht minifizierte CSS- und JS-Dateien finden

$find /var/www/vhosts/example.com/httpdocs/wp-content -type f \( -name '*.css' -o -name '*.js' \) ! -name '*.min.*' -size +20k -exec sh -c 'echo "$(wc -l < "$1") $1"' sh {} \; | awk -v n=200 '$1 > n' | sort -rn | head -30
harmlosBilder und Performance

PHP-Dateien im WordPress-Uploads-Ordner aufspüren

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.php' -o -iname '*.phtml' -o -iname '*.php[0-9]' \) -ls
harmlosSicherheit

PNG-Bilder verlustfrei mit optipng optimieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f -iname '*.png' -exec optipng -o2 -strip all -preserve {} +
vorsichtBilder und Performance

Versteckte PHP-Dateien im Webverzeichnis finden

$find /var/www/vhosts/example.com/httpdocs -type f -name '.*.php' -ls
harmlosSicherheit

Webfont-Dateien und ihre Größe finden

$find /var/www/vhosts/example.com/httpdocs/wp-content -type f \( -iname '*.woff2' -o -iname '*.woff' -o -iname '*.ttf' -o -iname '*.otf' -o -iname '*.eot' \) -printf '%s\t%p\n' | sort -rn | head -30 | numfmt --field=1 --to=iec
harmlosBilder und Performance

Zeilen in vielen Dateien zählen und sortieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/themes -type f -name '*.php' -exec wc -l {} + | sort -rn | head -n 20
harmlosTextverarbeitung

Erst lesen, dann ausführen.

Die Befehle auf myline.de greifen direkt in Server, Dateien und Datenbanken ein. Ein falscher Pfad oder Platzhalter kann Daten unwiderruflich löschen oder einen Server unerreichbar machen.

  • Alle Befehle werden ohne Gewähr bereitgestellt und sind nicht auf jedem System getestet.
  • Vor dem Ausführen verstehen, was ein Befehl tut, und jeden Platzhalter prüfen.
  • Vorher ein Backup anlegen und möglichst zuerst auf einem Testsystem ausprobieren.
  • Die Ausführung erfolgt auf eigene Verantwortung. Eine Haftung für Schäden ist ausgeschlossen, soweit gesetzlich zulässig.