Remplacer un champs d'un fichier par un autre champs d'un autre fichier
Résolu/Fermé
dino
-
Modifié le 25 févr. 2021 à 16:31
mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 - 9 mars 2021 à 14:11
mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 - 9 mars 2021 à 14:11
A voir également:
- Remplacer un champs d'un fichier par un autre champs d'un autre fichier
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier host - Guide
- Fichier iso - Guide
5 réponses
mamiemando
Messages postés
33077
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
18 avril 2024
7 748
Modifié le 3 mars 2021 à 13:44
Modifié le 3 mars 2021 à 13:44
Bonjour,
Le plus simple est sans doute d'écrire un petit programme en
Voici comment tu peux faire en python3.
fichier1.txt
fichier2.txt
Mêmes remarques.
toto.py
Résultat
En admettant que
Pour sauver le résultat dans
Dans ton cas, il faut au préalable corriger les valeurs de i1, i2, j1, j2 . Remplace :
... par :
Bonne chance
Le plus simple est sans doute d'écrire un petit programme en
pythonqui ferait le travail.
Voici comment tu peux faire en python3.
fichier1.txt
ABCDEF
GHIJKL
MNOPQR
fichier2.txt
abcdef
ghijkl
mnopqr
Mêmes remarques.
toto.py
#!/usr/bin/env python3 lines1 = None with open("fichier1.txt") as f1: lines1 = [line.rstrip() for line in f1.readlines()] lines2 = None with open("fichier2.txt") as f2: lines2 = [line.rstrip() for line in f2.readlines()] assert lines1 assert lines2 i1 = 3 j1 = 5 i2 = 2 j2 = 4 for (line1, line2) in zip(lines1, lines2): line1 = line1.split(" ") line2 = line2.split(" ") print(" ".join(line1[:i1] + line2[i2:j2] + line1[j1:]))
Résultat
En admettant que
toto.py,
fichier1.txtet
fichier2.txtsoient dans le même dossier, en lançant depuis ce dossier la commande
python3 toto.py, on obtient :
ABCcdF
GHIijL
MNOopR
Pour sauver le résultat dans
fichier3.txt:
python3 toto.py > fichier3.txt
Dans ton cas, il faut au préalable corriger les valeurs de i1, i2, j1, j2 . Remplace :
i1 = 3 j1 = 5 i2 = 2 j2 = 4
... par :
i1 = 420 j1 = 428 i2 = 120 j2 = 128
Bonne chance
Bonjour,
Merci beaucoup pour votre réponse , mais je suis sous unix : AIX 7.1, je n'ai pas Python , et je ne suis pas "root" pour l'installer.
encore une fois merci !
Merci beaucoup pour votre réponse , mais je suis sous unix : AIX 7.1, je n'ai pas Python , et je ne suis pas "root" pour l'installer.
encore une fois merci !
mamiemando
Messages postés
33077
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
18 avril 2024
7 748
Modifié le 8 mars 2021 à 14:45
Modifié le 8 mars 2021 à 14:45
Bonjour,
Tu peux écrire le même genre de script avec un langage disponible sur ton AIX (e.g. en awk ou en shell). C'est un sensiblement plus compliqué à écrire cependant c'est pour ça que j'ai donné une solution en python.
Autre solution, tu transformes ton fichier sur un autre PC sur lequel tu pourras installer ce que tu veux. En particulier, tu peux utiliser python via un navigateur (e.g. google colab), c'est à mon avis plus simple que de galérer à écrire le script en shell, surtout si tu n'as besoin de faire cette conversion qu'une fois pour toute...
Bonne chance
Tu peux écrire le même genre de script avec un langage disponible sur ton AIX (e.g. en awk ou en shell). C'est un sensiblement plus compliqué à écrire cependant c'est pour ça que j'ai donné une solution en python.
Autre solution, tu transformes ton fichier sur un autre PC sur lequel tu pourras installer ce que tu veux. En particulier, tu peux utiliser python via un navigateur (e.g. google colab), c'est à mon avis plus simple que de galérer à écrire le script en shell, surtout si tu n'as besoin de faire cette conversion qu'une fois pour toute...
Bonne chance
J'ai reussi a installer Python sur mon PC , charger mes fichiers du serveur AIX vers mon PC, et dérouler le scripts , ca marche !!.
Merci beaucoup
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33077
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
18 avril 2024
7 748
9 mars 2021 à 14:11
9 mars 2021 à 14:11
Super, bonne continuation :-)