Controler le nombre de lignes à afficher à partir d'un fichier
bloomingdals
Messages postés
74
Date d'inscription
Statut
Membre
Dernière intervention
-
bloomingdals Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
bloomingdals Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
j'ai un fichier texte dont la taille est entrain d'augmenter (par un autre processus shell).
je veux, a chaque fois que 1000 nouvelles lignes sont ajoutées à ce fichier, lire ces dernières.
j'utilise cette commande shell
head -n N fichier où N designe le nombre de lignes déja lues dans l'itération précédente (je précise que N est mise à jour par un code java donc pas de probleme ici).
le probleme est que cette commande me renvoie a chaque fois tout le fichier a part les N lignes déja lues alors que moi je veux lire 1000 autres lignes à partir de la position N+1
que dois je ajouter à cette commande pour que ca soit faisable
merci
j'ai un fichier texte dont la taille est entrain d'augmenter (par un autre processus shell).
je veux, a chaque fois que 1000 nouvelles lignes sont ajoutées à ce fichier, lire ces dernières.
j'utilise cette commande shell
head -n N fichier où N designe le nombre de lignes déja lues dans l'itération précédente (je précise que N est mise à jour par un code java donc pas de probleme ici).
le probleme est que cette commande me renvoie a chaque fois tout le fichier a part les N lignes déja lues alors que moi je veux lire 1000 autres lignes à partir de la position N+1
que dois je ajouter à cette commande pour que ca soit faisable
merci
A voir également:
- Controler le nombre de lignes à afficher à partir d'un fichier
- Fichier bin - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
5 réponses
Je ne comprends pas tout, donc en premier je dirai comme Flachy Joe, utilise tail pour lire les 1000 dernières lignes :
sinon, tu peux aussi faire de meme avec le résultat de ton head :
mais je viens de relire et je crois comprendre que tu cherches à lire ton fichier de la ligne N+1 àla ligne N+1+1000, c'est ca ? si oui, il faut d'abord les N+1+1000 premières lignes, et on prend les dernières :
cat fichier |tail -1000
sinon, tu peux aussi faire de meme avec le résultat de ton head :
head -n N fichier |tail -1000
mais je viens de relire et je crois comprendre que tu cherches à lire ton fichier de la ligne N+1 àla ligne N+1+1000, c'est ca ? si oui, il faut d'abord les N+1+1000 premières lignes, et on prend les dernières :
head -n N+1001 fichier |tail -1000=>1000= (N+1+1000) - (N+1)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question