FreeBSD: Andere uniq-Parameter oder Alternativen?

hijacker

hijacker

Akronymleser
Servus,

hier läuft ein Server mit FreeBSD 4.10 Stable für web und ftp eigentlich problemlos und zufriedenstellend vor sich hin...

...bis auf eine nervenaufreibende Sache: Um doppelte Dateien von den Benutzern aufzuspüren, benutze ich bisher unter Linux md5sum mit find, xargs, sort und uniq als pipes, da sort/uniq auch auf Teilstrings arbeiten können.

Auf BSD will es einfach nicht funktionieren, hier fehlen mir die uniq-Parameter -w 32 -D (check-chars und all-repeated), die gibt es laut BSD-manpage auch nicht.

So sieht der für BSD umgebastelte Code bisher aus, der eigentlich nur doppelte Dateien in aus dem jeweiligen Ordner ausgeben sollte:
Code:
find . -type f -print0 | xargs -0 md5 -r |sort |uniq -u
(ich weiß, sort -u wäre hier das selbe, da in sort in uniq eingebaut ist :>)

Machts aber nicht. Stattdessen werden alle (!) Datein ausgeben. Egal wie ich die Parameter drehe und wende (z.B.: -d -f 3 ?) - entweder spuckt es alle vorhandenen Dateien aus oder immer nur die erste vorhandene md5.sum.

Ich bin mit meinem Latein echt am Ende, unter Linux funzt das wunderbar. Die scheinbar abgespeckte uniq-Version von BSD nervt mich, genau wie die laut find-manpage optionale (!) Pfadangabe, ohne die aber in Wirklichkeit überhaupt nichts geht...

Gibt es eine Lösung die ich übersehen habe oder gar Alternativen zu uniq?
 
keiner eine idee? :think:

momentan sieht es so aus, dass ich die komplette md5-ausgabe in eine datei leite und von einem linux-rechner ueber smb sortiere. das geht zwar, aber ich haette den job schon ganz gern von der bsd-maschine selbst erledigt; ich sag nur cron-job...

das muss doch moeglich sein *zweifel*
 
danke fuer den anreiz. ich hab das ganze mit
Code:
find . -type f -print0  | xargs -0 md5 | sort -u +3
gefixt.
 
Update: Dank fdupes gehört das Prob nun der Vergangenheit an. Thread kann von mir aus geschlossen werden..
 

Ähnliche Themen

Dateinamen + MD5-Checksumme + Dateigröße zeilenweise ausgeben

Dateifreigabe

Zurück
Oben