Fritz Thomas

21 Mar, 2008

Rekursiv für bestimmte Dateien Dateioperation durchführen

Posted by: Fritz Thomas In: Linux

Ich hatte das Problem das ich über ein ganzes Projektverzeichnis bei bestimmten Dateien (.php, .phtml, .js, .css) ein svn propset ausführen wollte. Unter Windows und TortoiseSVN hat man zwar die Möglichkeit über ein ganzes Verzeichnis rekursiv ein Property zu setzen, jedoch nicht nach Dateiendungen zu entscheiden ob es gesetzt werden soll. Eine einfache und schnelle Möglichkeit ist dazu das Unix/Linux Tool ‘find’.

Nach Dateien suchen und dabei Dateien in einem .svn Verzeichnis nicht durchsuchen. Auf jedes gefundene File ein svn propset anwenden:

find \! -wholename \*.svn\* -type f  \( -name \*.php -o -name \*.phtml -o -name \*.css -o -name \*.js -o -name \*.ini \) -exec svn propset svn:keywords 'Date Revision Author HeadURL Id' {} \;

Das ganze kann natuerlich auch fuer andere Dateioperationen angewandt werden wir zum Beispiel dos2unix:

find \! -wholename \*.svn\* -type f  \( -name \*.php -o -name \*.phtml -o -name \*.css -o -name \*.js -o -name \*.html -o -name \*.ini \) -exec dos2unix {} \;

Bei den Beispielen werden alle ‘.svn’ Verzeichnisse nicht durchsucht: \! -wholename \*.svn\*
Es wird nur nach Dateien gesucht: -type f
Und nur nach Dateien mit der Endung .php .phtml .css .js .html .ini : \( -name \*.php -o -name \*.phtml -o -name \*.css -o -name \*.js -o -name \*.html -o -name \*.ini \)

  • Digg
  • del.icio.us
  • description
  • MisterWong
  • Reddit
  • Slashdot
  • Technorati
  • YahooMyWeb
  • Fark
  • Google

No Responses to "Rekursiv für bestimmte Dateien Dateioperation durchführen"

Comment Form

About

This is my Blog about PHP the Zend Framework, JavaScript, Net Culture and all other stuff which is interesting to me.

Latest Tweets