J'ai le bloc de données suivant qui continue indéfiniment horizontalement et verticalement avec des nombres négatifs uniquement dans les colonnes impaires:
-1 2 3 4 -5 9
2 3 -4 5 -6 11
Et je veux les 2ème, 4ème et 6ème colonnes complètes (ou chaque colonne paire) et les signes moins uniquement à partir des 1ère, 3ème et 5ème (ou toutes les colonnes impaires), donc j'obtiens ceci:
- 2 4 - 9
3 - 5 - 11
Et finalement finir avec ceci:
-2 4 -9
3 -5 -11
J'ai donc besoin que les valeurs des colonnes paires soient inchangées et des colonnes impaires, s'il y a une valeur négative, conservez le - uniquement et s'il y a une valeur positive, jetez-la.
Existe-t-il un moyen de le faire avec awk / sed?
C'est à peu près autant que je reçois:
awk '{ for (i=2;i<=NF;i+=2) $i="" }1' FILE.txt | sed 's/[0-9,.]*//g'