#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.
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