2010-11-22 11 views
0

Ma tâche consiste à prendre un répertoire de fichiers de site Web, y compris les fichiers image html, css et non-texte, et de convertir tous les chemins d'images en cdn universel chemin. C'est sur un mac.Convertir tous les liens image dans un répertoire de site Web (sur mac)

Mon point de départ est quelque chose comme ceci:

sed -i '' 's/old_link/new_link/g' * 

mais je veux d'agir uniquement sur css, fichiers html, et récursion dans les sous-répertoires.

grâce

Répondre

1

Essayez d'utiliser find. Soemthing comme:

find . -name *css -exec sed -i '' 's/old_link/new_link/g' {} ';' 

trouverez tous les fichiers CSS dans votre répertoire en cours et au-dessous et passer chacun à sed. Le {} représente le nom (et l'emplacement) de chaque fichier trouvé. N'omettez pas les guillemets autour de la finale;

Répétez ensuite pour les fichiers html.

Comme toujours, pour les points de syntaxe plus fins, consultez man, ou google pour la documentation de recherche.

+1

Vous devez indiquer le motif glob et utiliser un point. Et vous pouvez utiliser '-o' pour faire les deux types de fichiers en un seul passage:' find. -nom "* .css" -o -name "* .html" ... '' –

+0

@Dennis Merci! – Yarin