j'ai de nombreuses lignes de la formegroupes de capture dans sed
ko04062 ko:CXCR3
ko04062 ko:CX3CR1
ko04062 ko:CCL3
ko04062 ko:CCL5
ko04080 ko:GZMA
et aimerait bien se débarrasser du ko: bit de la colonne de droite. Je suis en train d'utiliser sed, comme suit:
echo "ko05414 ko:ITGA4" | sed 's/\(^ko\d{5}\)\tko:\(.*$\)/\1\2/'
qui sort simplement la chaîne d'origine I echo'd. Je suis très nouveau dans les scripts de ligne de commande, sed, pipes etc, alors s'il vous plaît ne soyez pas trop en colère si/quand je fais quelque chose de très bête.
La principale chose qui me trouble est que la même chose se produit si j'inverse le bit \1\2
pour lire \2\1
ou simplement utiliser un groupe. Cela suppose, je suppose, qu'il me manque quelque chose à propos de la mécanique de la sortie d'écho dans sed, ou que mon expression rationnelle est fausse ou que j'utilise sed mal ou que sed n'imprime pas les résultats de la substitution .
Toute aide serait grandement appréciée!
Une raison pour laquelle vous ne pouvez pas utiliser sed 's/ko \: // g'? – Anders
une raison pour laquelle vous n'utilisez pas Perl? :-P – eruciform
ne sait pas Perl! apprendre Sed maintenant. Will apprendre perl, et toute autre chose, au fur et à mesure des besoins ... –