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 06/03/2020, à 11:58

kevino_linux

Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Bonjour,

Le titre est un peu barbare, mais voici l'explication détaillée :

J'ai un fichier comportant 8 colonnes, et beaucoup de lignes.
Il se présente comme ceci (je n'expose qu'une seule ligne avec ses 8 colonnes #1 jusqu'à #8)

loop_
_A #1
_B #2
_C #3
_D #4
_E #5
_F #6
_G #7
_H #8
in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.mrc in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.ctf:mrc 27015.365234 26418.849609    10.694488     -0.00885    14.113443            1

J'aimerais rajouter GCTFV2/ devant les premiers mots de la premières colonne afin qu'elle devienne:
GCTFV2/in24981-8/raw/Images Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.mrc  in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.ctf:mrc 27015.365234 26418.849609    10.694488     -0.00885    14.113443            1

J'imagine qu'il faut utiliser sed, mais après plusieurs test je n'arrive pas à sélectionner la première colonne uniquement.

D'avance merci,

Hors ligne

#2 Le 06/03/2020, à 12:09

pingouinux

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Bonjour,
Je n'ai pas compris le début de tes explications, mais si tu veux ajouter le même texte au début de chaque ligne :

sed 's#^#GCTFV2/#' fichier_original >fichier_modifie

Hors ligne

#3 Le 06/03/2020, à 12:14

kevino_linux

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Merci beaucoup, effectivement j'ai du mal à me faire comprendre...

Je vais te montrer le début de mon fichier en entier ce sera plus parlant


# version 30001

data_optics

loop_
_rlnOpticsGroup #1
_rlnOpticsGroupName #2
_rlnAmplitudeContrast #3
_rlnSphericalAberration #4
_rlnVoltage #5
_rlnMicrographPixelSize #6
           1 opticsGroup1     0.100000     2.700000   300.000000     0.830000


# version 30001

data_micrographs

loop_
_A #1
_B #2
_C #3
_D #4
_E #5
_F #6
_G #7
_H #8
in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.mrc in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328623_Data_5320469_5320471_20200207_025601_fractions.ctf:mrc 27015.365234 26418.849609    10.694488     -0.00885    14.113443            1
in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328624_Data_5320469_5320471_20200207_025724_fractions.mrc in24981-8/raw/Images-Disc1/GridSquare_5311920/Data/FoilHole_5328624_Data_5320469_5320471_20200207_025724_fractions.ctf:mrc 28451.644531 25662.027344    62.600983     -0.00507    12.459121            1

J'aimerais rajouter GCTFV2/ devant chaque ligne, en commencant par celle en gras...

Merci beaucoup!

Hors ligne

#4 Le 06/03/2020, à 12:42

nany

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Bonjour,


Si les lignes commencent toutes par inxxxxx-x, alors :

sed '/^in[0-9]*-[0-9]/s#^#GCTFV2/#' fichier_original >fichier_modifie

Hors ligne

#5 Le 06/03/2020, à 13:14

pingouinux

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Et si les lignes à modifier ne commencent pas toutes par la même chose :

sed '/^in24981/,$s#^#GCTFV2/#' fichier_original >fichier_modifie

Hors ligne

#6 Le 06/03/2020, à 14:06

kevino_linux

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Merci beaucoup a vous deux, c'est top !
Bonne journée !

Hors ligne

#7 Le 07/06/2021, à 11:22

kevino_linux

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

Bonjour,

Dans le cas où j'aimerai rajouter GCTFV2/ devant chaque ligne, mais au niveau de la deuxième colonne, que devient la commande ?
Je n'arrive malheureusement pas à la modifier afin que ça fonctionne.

Merci beaucoup,

Hors ligne

#8 Le 07/06/2021, à 13:26

Watael

Re : Ajout de mots en prefixe sur d'une ligne contenue dans une colonne

la commande devient awk. lol

et mon commandement est : montre-nous comment tu essaies de faire tes exercices.

Dernière modification par Watael (Le 07/06/2021, à 13:27)


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

Hors ligne