#1 Le 25/09/2020, à 09:14
- Sciensous
[question RÉSOLUE] sed et insérer numéro de ligne
bonjour, une question simple après recherche vaine sur sed (le mot de clef numero de ligne n'aide pas du tout )
quelqu'un saurait comment à partir d'un fichier texte, rajouter devant chaque ligne le numéro de la ligne en question ?
ex:
,A,B
,C,D
...
devient
0,A,B
1,C,D
...
merci
Dernière modification par Sciensous (Le 25/09/2020, à 13:08)
antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )
Hors ligne
#2 Le 25/09/2020, à 09:36
- Watael
Re : [question RÉSOLUE] sed et insérer numéro de ligne
salut,
hmm, mais le numéro de ligne de la ligne une, c'est 1, pas zéro !
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#3 Le 25/09/2020, à 09:46
- pingouinux
Re : [question RÉSOLUE] sed et insérer numéro de ligne
Bonjour,
Avec sed, en deux étapes (la numérotation commence à 1) :
sed '=' fichier | sed -n 'N;s/\n//p'
Avec awk (la numérotation commence à 0) :
awk '{printf("%s%s\n",NR-1,$0)}' fichier
Hors ligne
#4 Le 25/09/2020, à 09:55
- moko138
Re : [question RÉSOLUE] sed et insérer numéro de ligne
quelqu'un saurait comment à partir d'un fichier texte, rajouter devant chaque ligne le numéro de la ligne en question ?
Voici une solution simple (qui n'utilise pas sed) :
cat -n fichier
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#5 Le 25/09/2020, à 13:14
- Sciensous
Re : [question RÉSOLUE] sed et insérer numéro de ligne
merci à tous pour vos réponses
@pingouinux: entretemps j'ai trouvé aussi la solution du sed mais en 2 temps
et en effet,
@Watael: le numéro de ligne doit commencer par 0 (ou rien) car il s'agit d'un "titre" dans le fichier (en fait une description des champs qui vont suivre)
@moko138: oui c'est simple (mieux que les 2 sed ?) mais j'avais complètement oublié cette option de cat
mais pour cette fois ce sera l'option awk de pingouinux qui convient à cause du "titre"
Au plaisir
antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )
Hors ligne
#6 Le 25/09/2020, à 14:40
- Compte supprimé
Re : [question RÉSOLUE] sed et insérer numéro de ligne
Bonjour,
J'ignore le but de la manoeuvre mais si le but est d'indexer chaques lignes pour les traiter individuellement , il serait peut être judicieux de travailler sur l'index d'une liste
var=( $(cat fichier.txt) )
#pour afficher la phrase correspondant au champ 0:
echo "${var[0]}"
# ...