Salut
J’ai besoin d’aide pour un script bash. J’aimerai que mon programme prennent en entrée deux paramètres, le premier est un fichier html, le second un répertoire contenant des fichiers qui vont être modifier.
Le but est de rajouter une image (donc de l’html) à des signatures de mails. Il faut donc ajouter le contenu du fichier 1 dans tous les fichiers du répertoire indiqué par l’argument 2 juste avant la fin du body.
#!/bin/bash
usage () {
echo "wrong usage, you should provid a starting path"
echo
echo "use this script as such : $0 <html file who's content will be added to each signatures> <path to directory containing html signature>"
exit -1
}
if [ $# -ne 2 ]
then
usage
fi
h=$1
if [ ! -f $1 ] || [[ ${h: -5} != ".html" ]]; then
usage
fi
#find provide a recursive method to list everything
files=$(find $2)
#process files
for file in $files
do
if [[ ${file: -5} == ".html" ]]
then
#sed -i "/<\/body>/r./$2" $file #print after </body>
#awk '/<\/body>/ { system ( "cat $2" ) } \
# { print; } \' "$file"
#sed -e "/<\/body>/r $1" $file
#sed -n -e "/<\/body>/r $1" -e 1x -e '2,${x;p}' -e '${x;p}' $file
sed -n -e '/<\/body>/r '"$1" -e 1x -e '2,${x;p}' -e '${x;p}' $file
fi
done
Mais aucune des commandes dans ma boucle ne fonctionne malgré les indications SO: Quelqu’un aurait une solution ?
merci d’avance
+0
-0