Find -exec auf Alias

Hallo Leute

Ich habe mir eben via php eine md5sum-Alternative für die Konsole gebaut, welche den Md5 zu einer Datei samt last modification time in einer mysql-Datenbank ablegt.
Hintergrund ist: bei der Verwendung von md5-Prüfsummen in Shell-Skripten möchte ich den Vorgang dadurch beschleunigen, das die Prüfsumme nach jeder Änderung einer Datei nur einmal vollständig berechnet werden muss.

Nun habe ich einen Alias namens „md5sum_ext“ auf die Ausführung des php-scripts gelegt:

[PRE]
alias md5sum_ext=’/opt/lampp/bin/php /scripts/md5sum_ext/md5sum_ext/md5sum_ext.php’
[/PRE]
(Die Pfade sind so korrekt)

Nun kann ich via

[PRE]
md5sum_ext ~/*
[/PRE]

beispielsweise aus allen Dateien des Home die MD5-Prüfsummen ausgeben, wobei sie nur einmal berechnet werden. Bei jedem 2. Vorgang beschleunigt sich die Ausgabe somit dramatisch (zumindest bei größeren Dateien :smile: )

Jetzt wollte ich allerdings ganz schlau sein, und dieses Alias auch mit dem FIND-Kommando verwenden:

Statt
[PRE]
find -type f -exec md5sum {} ; | tee ./data/sum.unsorted;
[/PRE]

wollte ich also
[PRE]
find -type f -exec md5sum_ext {} ; | tee ./data/sum.unsorted;
[/PRE]

verwenden. Allerdings kommt dann die Fehlermeldung:
md5sum_ext: No such file or directory

Das gleiche habe ich via xargs versucht. Gleiches Resultat.

Es scheint mir, als würde der Alias an „md5sum_ext“ dieser Stelle nicht korrekt umgesetzt werden oder anderweitig probleme zu machen.

Fällt euch eine elegante Lösung ein, wie ich das Problem lösen kann?

Mit fruendlichem Gruß,
jdelmour

Man sollte nicht zu kompliziert denken :smile:

Das Verzeichnis zum php-File habe ich in PATH aufgenommen.
Außerdem in der ersten zeile via #! den Pfad zum richtigen PHP-Interpreter übergeben, so das jetzt überall statt md5sum lediglich md5sum_ext.php stehen muß. Zusätzliche Erwähnung des Interpreters ist somit nicht mehr nötig.
Dann klappt es auch mit dem FIND-Befehl :smile:

Dennoch interessant zu wissen, das Aliase an dieser Stelle im FIND-Befehl nicht aufgelöst werden.

Liebe grüße,
jdelmour