#1 Le 03/02/2007, à 13:28
- LRT
Insérer le nom du fichier dans le texte du fichier
Bonjour, j'aimerai trouver un logiciel qui soit capable de mettre le nom d'un fichier texte (par exemple pour toto.txt, "toto") à l'intérieur du fichier sur la première ligne.
Ainsi, si le fichier toto.txt contient le texte "va à la plage", j'obtiendrai "toto va à la plage",
c pour créer une base de donnée, et j'ai plus de 1500 fichiers à traiter de cette façon,
Merci de votre aide
#2 Le 03/02/2007, à 15:20
- LaTheix
Re : Insérer le nom du fichier dans le texte du fichier
Essaye cela dans un script
for i in `ls *.txt`
do
echo `basename $i .txt` `head -n1 $i` > $i
done
Si maintenant je fais un test avec 3 fichiers:
echo "va à la plage" > toto.txt
echo "fait du vélo" > titi.txt
echo "mange des pommes" > tata.txt
J'obtiens une fois le script exécuté:
toto va à la plage
titi fait du vélo
tata mange des pommes
Nota:
- Si tes fichiers ont des espaces dans leur nom, encdrer $i par des guillemets,
- Si tes fichiers sont dispersés dans des sous répertoires sous une même racine, remplacer `ls *.txt`par `ls -R *.txt` pour que le script sois récursif,
- Si tes fichiers ont une autre extension que le 'txt' ou n'en ont pas, la modifier en conséquence dans le script.
Hors ligne
#3 Le 03/02/2007, à 15:57
- LRT
Re : Insérer le nom du fichier dans le texte du fichier
Ok merci beaucoup, ca marche, j'utilise cat au lieu de head, car le texte est un peu long
et c très simple au final