#1 Le 09/12/2015, à 17:01
- kisame
[Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
Salut tout le monde,
Quelqu'un pourrait m'aider avec mon problème.
J'ai des milliers de fichiers texte (obtenus suite à une recupération de données sur une carte sd defectueuse) que je souhaite renommer avec la 1ere ligne de chaque fichier texte.
Je pense qu'en bash c'est faisable en 1 ligne voir en un petit fishier shell. Si quelqu'un pouvait m'aider à faire ça ça serait très appréciable.
Merci d'avance.
@+
Dernière modification par kisame (Le 09/12/2015, à 18:21)
Kubuntu 12.10 version AMD64; Version de KDE : 4.8.5
Carte graphique: GeForce FX 5500; Version du pilote Nvidia : 173.14.35; Résolution : 1680x1050; Modèle d'écran : Acer AL2016W
Processeur : AMD Athlon 3400+; 2400 Mhz
Hors ligne
#2 Le 09/12/2015, à 17:12
- vv221
Re : [Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
Récupérer la première ligne est facile :
head -n1 fichier.txt
Reste à voir pour la suite ce que tu veux faire de cette ligne.
-----
Si tu veux tout simplement utiliser cette ligne comme nom pour chaque fichier :
for file in *.txt; do
newname="$(head -n1 "$file").txt"
mv "$file" "$newname"
done
Cette boucle est à lancer depuis le répertoire contenant les fichiers *.txt
Dernière modification par vv221 (Le 09/12/2015, à 17:15)
Jouer sur Ubuntu ? Facile !
Hors ligne
#3 Le 09/12/2015, à 17:15
- pingouinux
Re : [Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
Bonjour,
for f in *; do echo mv -i "$f" "$(head -1 "$f")";done
Enlever le echo si c'est bon
for f in *; do mv -i "$f" "$(head -1 "$f")";done
Hors ligne
#4 Le 09/12/2015, à 18:20
- kisame
Re : [Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
Un grand merci à vous deux. Vous avez été très rapide à répondre
Je passe le sujet en résolu.
Kubuntu 12.10 version AMD64; Version de KDE : 4.8.5
Carte graphique: GeForce FX 5500; Version du pilote Nvidia : 173.14.35; Résolution : 1680x1050; Modèle d'écran : Acer AL2016W
Processeur : AMD Athlon 3400+; 2400 Mhz
Hors ligne
#5 Le 10/12/2015, à 13:53
- credenhill
Re : [Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
hello
pour tester
$ awk '{print "mv \"" FILENAME "\" \"" $0 "\""; nextfile}' *
pour exécuter
$ awk '{print "mv \"" FILENAME "\" \"" $0 "\""; nextfile}' * | bash -x
Hors ligne
#6 Le 11/12/2015, à 01:10
- kisame
Re : [Resolu] Renommer des fichiers texte ac la 1e ligne de chq fichier
Merci credenhill meme si ca a marché avec les réponses précédentes
Kubuntu 12.10 version AMD64; Version de KDE : 4.8.5
Carte graphique: GeForce FX 5500; Version du pilote Nvidia : 173.14.35; Résolution : 1680x1050; Modèle d'écran : Acer AL2016W
Processeur : AMD Athlon 3400+; 2400 Mhz
Hors ligne