Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[bash] tail -f sur 2 fichiers

3 réponses
Avatar
zelos 414
Bonjour,

J'ai un petit probl=E8me sous shell et j'avoue essay=E9 pas mal de
solutions sans succ=E8s...

J'ai deux fichiers : premier.txt et second.txt. Pour simplifeir les
choses, disons les tous deux au format CSV.

Le r=E9sultat recherch=E9 doit effectuer un tail -f sur le second fichier
en fonction du tail -f premier.txt | grep monmotif le tout en temps
r=E9=E9l. (Un peu comme un select sur deux tables)

Voici le d=E9tail:

tail -f premier.txt | cut -d\; -f 4,5 =3D> Ici, je r=E9cup=E8re un
=E9l=E9ement(champ 4) et une date au format date +%s(champ 5)

J'ai besoin donc de gr=E9per le fichier second.txt en fonction du champ
date r=E9cup=E9r=E9 auparavant.

Le r=E9sultat devrait donc m'afficher les champs 4 & 5 du premier
fichier et le 3=E8me champ du second fichier mais avec un comportement
similaire =E0 tail -f.

Auriez-vous une id=E9e ?

Merci.
Zelos

3 réponses

Avatar
fra-duf-no-spam
Le 13915ième jour après Epoch,
zelos écrivait:

Bonjour,

J'ai un petit problème sous shell et j'avoue essayé pas mal de
solutions sans succès...

J'ai deux fichiers : premier.txt et second.txt. Pour simplifeir les
choses, disons les tous deux au format CSV.

Le résultat recherché doit effectuer un tail -f sur le second f ichier
en fonction du tail -f premier.txt | grep monmotif le tout en temps
réél. (Un peu comme un select sur deux tables)

Voici le détail:

tail -f premier.txt | cut -d; -f 4,5 => Ici, je récupère un
éléement(champ 4) et une date au format date +%s(champ 5)

J'ai besoin donc de gréper le fichier second.txt en fonction du champ
date récupéré auparavant.

Le résultat devrait donc m'afficher les champs 4 & 5 du premier
fichier et le 3ème champ du second fichier mais avec un comportement
similaire à tail -f.

Auriez-vous une idée ?



Un truc du genre logtail, qui fait un tail de ce que tu n'as pas déj à
regardé. C'est (c'était?) utilisé dans munin pour "suivre" l es logs

Le paquet semble déprécié (voir apt-cache)...
Avatar
fabrice régnier
salut,

réél. (Un peu comme un select sur deux tables)


Quel est la "jointure" que tu veux faire entre les 2 txt ?
Si c'est sur un champ donné, alors tu peux regarder du coté de join.

FR-PORT:~# whatis join
join (1) - join lines of two files on a common field


a+

f.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Vincent Lefevre
On 2008-02-06 12:29:16 +0100, fabrice régnier wrote:
Quel est la "jointure" que tu veux faire entre les 2 txt ?
Si c'est sur un champ donné, alors tu peux regarder du coté de join.

FR-PORT:~# whatis join
join (1) - join lines of two files on a common field



Ça m'étonnerait que ce soit ce qu'il veut, d'autant plus que join
n'affiche rien tant qu'il n'a pas toutes les données, ce qui est
incompatible avec le tail -f. Par exemple, en zsh,

join <(repeat 5 { date; sleep 1 }) <(repeat 5 { date; sleep 1 })

affiche *au bout de 5 secondes* (et rien avant):

Wed Feb 6 12:58:42 CET 2008 Feb 6 12:58:42 CET 2008
Wed Feb 6 12:58:42 CET 2008 Feb 6 12:58:43 CET 2008
Wed Feb 6 12:58:42 CET 2008 Feb 6 12:58:44 CET 2008
Wed Feb 6 12:58:42 CET 2008 Feb 6 12:58:45 CET 2008
Wed Feb 6 12:58:42 CET 2008 Feb 6 12:58:46 CET 2008
Wed Feb 6 12:58:43 CET 2008 Feb 6 12:58:42 CET 2008
Wed Feb 6 12:58:43 CET 2008 Feb 6 12:58:43 CET 2008
Wed Feb 6 12:58:43 CET 2008 Feb 6 12:58:44 CET 2008
Wed Feb 6 12:58:43 CET 2008 Feb 6 12:58:45 CET 2008
Wed Feb 6 12:58:43 CET 2008 Feb 6 12:58:46 CET 2008
Wed Feb 6 12:58:44 CET 2008 Feb 6 12:58:42 CET 2008
Wed Feb 6 12:58:44 CET 2008 Feb 6 12:58:43 CET 2008
Wed Feb 6 12:58:44 CET 2008 Feb 6 12:58:44 CET 2008
Wed Feb 6 12:58:44 CET 2008 Feb 6 12:58:45 CET 2008
Wed Feb 6 12:58:44 CET 2008 Feb 6 12:58:46 CET 2008
Wed Feb 6 12:58:45 CET 2008 Feb 6 12:58:42 CET 2008
Wed Feb 6 12:58:45 CET 2008 Feb 6 12:58:43 CET 2008
Wed Feb 6 12:58:45 CET 2008 Feb 6 12:58:44 CET 2008
Wed Feb 6 12:58:45 CET 2008 Feb 6 12:58:45 CET 2008
Wed Feb 6 12:58:45 CET 2008 Feb 6 12:58:46 CET 2008
Wed Feb 6 12:58:46 CET 2008 Feb 6 12:58:42 CET 2008
Wed Feb 6 12:58:46 CET 2008 Feb 6 12:58:43 CET 2008
Wed Feb 6 12:58:46 CET 2008 Feb 6 12:58:44 CET 2008
Wed Feb 6 12:58:46 CET 2008 Feb 6 12:58:45 CET 2008
Wed Feb 6 12:58:46 CET 2008 Feb 6 12:58:46 CET 2008

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact