Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/11/2018, à 21:28

AEliso19

Traiter fichier texte en bash [RESOLU]

Bonjour ou Bonsoir à tous et toute !

Débutant dans le monde de la programmation je me retrouve confronté à mon 1er obstacle de taille.

Donc voila, je possède un fichier texte qui contient plusieurs lignes, chaque lignes contient deux champs sous la forme NomFichier:Chemin

Grâce à la commande " awk -F ":" '{ $1 = " " ; print $0 }' monfichier.txt | sed -n 1p  " j'arrive bien à afficher le 1er champs de la 1ère ligne (et à le récupérer dans une variable par la suite). Idem pour le 2ème champs.

Ce que je souhaiterai faire, je pensais grâce à une boucle while, ce serai de :
1 - Récupérer le champs 1 de la 1ère ligne et le mettre dans une variable
2 - Récupérer le champs 2 de cette même 1ère ligne et le mettre dans une variable
3 - exécuter une commande mv
4 - relancer le script pour la ligne 2...
5 - ...puis pour la ligne 3, etc etc

Des idées ? smile
Merci d'avance !

Dernière modification par AEliso19 (Le 11/11/2018, à 22:10)

Hors ligne

#2 Le 11/11/2018, à 21:34

Watael

Re : Traiter fichier texte en bash [RESOLU]

salut,

IFS=':' read chp1 chp2

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 11/11/2018, à 21:38

pingouinux

Re : Traiter fichier texte en bash [RESOLU]

Bonsoir,

while IFS=":" read v1 v2;do echo mv "$v1" "$v2"; done <monfichier.txt

et enlever le echo si c'est bon.

Hors ligne

#4 Le 11/11/2018, à 22:10

AEliso19

Re : Traiter fichier texte en bash [RESOLU]

Super pingouinux c'est exactement ce qu'il me fallait ! big_smile Grand merci ! Et à toi aussi Watael pour avoir pris le temps de répondre wink

Hors ligne