Closed jlecour closed 14 years ago
Peut-être qu'avec awk ça passera mieux : 496cf0d9f740a79519a3ad804bfa737374759aac
Par curiosité, comme ça semble l'option pour inverser les motifs qui ne semble pas être appliquée par cette version de grep (-v) , tu pourras essayer avec :
grep --invert-match -E "^\s*$" "$1" > $TMP
Mais c'est bizarre, j'ai bien vu dans le man grep de FreeBSD que -v doit marcher aussi.
non, pour moi, ça donne la même chose.
Je teste sur le fichier .htaccess et il me reste une ligne blanche avant/après RewriteRule ^r/166/?$ /reunions/9-avril-2010/ [R=301,L]
Avec awk
ça semble OK.
Mais ça serait pas mal d'exclure le dossier 'pub'. Le nettoyer est inutile au mieux, et destructeur au pire.
Voilà qui est fait, et la liste des extensions est un peu plus facile à maintenir. a306c98ae2d10946c3367376ab97e158a5c8a4b4 Par contre pas aussi simple de maintenir dans une variable la liste des répertoires à exclure.
La ligne qui affiche les fichiers traités pourra être commentée une fois qu'on est sûr de notre coup sur toutes les plateformes.
Sur mon Mac, j'obtiens find: -regextype: unknown option
. J'avoue que je n'ai as du tout eu le temps de chercher, mais décidément, les variations entre les versions GNU et BSD nous font un peu suer.
J'ai modifié le script pour l'adapter en fonction de l'OS détecté, je crois qu'on a pas le choix.
J'ai fait l'adaptation des options du find d'après le man find
de BSD, à voir si ça marche.
Je capte toujours pas pourquoi, mais j'ai encore ceci : find: -E: unknown option
Ça a été résolu, on ferme.
Sur Mac, le script de suppression des lignes blanches laisse en fait des lignes qui ne contiennent que des espaces. Je ne sais pas si c'est une question de motig pour Grep (j'ai cherché mais pas trouvé) ou bien que ces caractères sont bizarres (pas de simples espaces). À vérifier.