Modifier 1 champ via transco dans un fichier via script unix
Résolu
JsuisNul
Messages postés
122
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
14 février 2024
-
18 janv. 2024 à 17:31
JsuisNul - 25 janv. 2024 à 22:46
JsuisNul - 25 janv. 2024 à 22:46
A voir également:
- Modifier 1 champ via transco dans un fichier via script unix
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Modifier dns - Guide
- Script vidéo youtube - Guide
4 réponses
Bonjour,
Désolé de ne pas avoir fait de retour plus tôt.
Merci à dubcekpour sa réponse que j'ai pu tester aujourd'hui. cela fonctionne. je ferme la discussion.
Merci.
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
19 janv. 2024 à 10:32
19 janv. 2024 à 10:32
hello
il faut remplacer XXX ou 4 cars.. quelconques ?
$ awk '/CCCC/ {sub("XXXX", "OOOO"); sub("YYYY", "MMMM")}; {print}' fichier 0000000001..........AAAA..........88888aaauuppppp 0000000001..........BBBB..........qqqqqq7589a 0000000001..........CCCC..........OOOO0000555544447777 0000000002..........AAAA..........884569aaauuppppp 0000000002..........BBBB..........qfrdqqdd7589a 0000000002..........CCCC..........MMMM00006663333777
JsuisNul
Messages postés
122
Date d'inscription
mercredi 13 février 2013
Statut
Membre
Dernière intervention
14 février 2024
1
19 janv. 2024 à 10:53
19 janv. 2024 à 10:53
Hello dubcek,
Oui le but est de changer la valeur XXXX toujours par la valeur OOOO et si c'est la valeur YYYY alors par la valeur MMMM.
Par contre, est-il possible de préciser la position du champ à modifier pour éviter que si la valeur se trouve ailleurs sur la même ligne que celle-ci ne soit pas changé ?
Merci à toi
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
19 janv. 2024 à 11:32
19 janv. 2024 à 11:32
ne modifie que le champ 3
$ awk -F "[.]{10}" '$2 ~ /CCCC/ {sub("XXXX", "OOOO", $3); sub("YYYY", "MMMM", $3)}; {OFS=".........."; print}' fichier 0000000001..........AAAA..........88888aaauuppppp 0000000001..........BBBB..........qqqqqq7589a 0000000001..........CCCC..........OOOO0000555544447777 0000000002..........AAAA..........884569aaauuppppp 0000000002..........BBBB..........qfrdqqdd7589a 0000000002..........CCCC..........MMMM00006663333777
mamiemando
Messages postés
33459
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 janvier 2025
7 813
Modifié le 25 janv. 2024 à 19:15
Modifié le 25 janv. 2024 à 19:15
@JsuisNul StatutMembre
Est-ce que la réponse de dubcek répond à ton problème ?
- Si oui, merci de basculer le sujet en résolu.
- Sinon, merci d'indiquer comment on peut t'aider.