Utilisation de la commande diff
albert40
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bon voilà je veux écrire un script qui lance un signal sonore si deux fichiers textes sont différents. Après une petite recherche je me suis aperçue que la commande diff permet de comparer deux fichiers ligne par ligne.
Je me demande donc si c'est possible d'utiliser cette commande dans mon script.
Merci pour vos réponses
Je me demande donc si c'est possible d'utiliser cette commande dans mon script.
Merci pour vos réponses
A voir également:
- Diff a b > sw.diff
- B&you - Guide
- Voyant c et b imprimante canon ✓ - Forum Imprimante
- Clavier essentiel b ne fonctionne pas ✓ - Forum Clavier
- Code ascii de b - Guide
- B allemand ✓ - Forum Clavier
2 réponses
Salut,
Avant toutes choses, man diff ;-))
Sinon, la commande diff sans paramètre ne renvoie rien si 2 fichiers sont identiques avec un code retour ($?) de "0", et renvoie les différences si elles existent avec un code retour ($?) de "1". A partir de là il est très facile de tester ce code retour et de lancer un bip sonore en cas d'inégalité...
Avant toutes choses, man diff ;-))
Sinon, la commande diff sans paramètre ne renvoie rien si 2 fichiers sont identiques avec un code retour ($?) de "0", et renvoie les différences si elles existent avec un code retour ($?) de "1". A partir de là il est très facile de tester ce code retour et de lancer un bip sonore en cas d'inégalité...
Bonjour
oui effectivement c'est ce que j'ai remarqué quand j'ai fait le test de la valeur de ($?)
J'ai quand même deux questions :
est ce que c'est possbile d'utiliser la fonction diff pour afficher les lignes où il y a des différences entre les deux fichiers ??
comment faire pour "programmer" le bip sonore (une commande particulière ...)
Merci pour votre aide
oui effectivement c'est ce que j'ai remarqué quand j'ai fait le test de la valeur de ($?)
J'ai quand même deux questions :
est ce que c'est possbile d'utiliser la fonction diff pour afficher les lignes où il y a des différences entre les deux fichiers ??
comment faire pour "programmer" le bip sonore (une commande particulière ...)
Merci pour votre aide
est ce que c'est possbile d'utiliser la fonction diff pour afficher les lignes où il y a des différences entre les deux fichiers ??
comment faire pour "programmer" le bip sonore (une commande particulière ...)
Si un bip sonore te suffit, un simple echo -e "\a" devrait suffire, sinon tu peux lire un fichier "wav" (ou autre) avec "play" ou "aplay"...
$ cat A un deux trois quatre cinq $ cat C un deux troi quatre cinq $ diff A C 3c3 < trois --- > troi $
comment faire pour "programmer" le bip sonore (une commande particulière ...)
Si un bip sonore te suffit, un simple echo -e "\a" devrait suffire, sinon tu peux lire un fichier "wav" (ou autre) avec "play" ou "aplay"...
Merci pour la réponse :)
Toutefois j'avoue que j'ai un problème au niveau de la comparaison. Voilà le résultat que me sort la commande diff :(
Personnellement je ne vois pas où est le problème dans mes deux fichiers qui semblent authentiques. Si vous pouvez m'aider pour comprendre cette sortie
Toutefois j'avoue que j'ai un problème au niveau de la comparaison. Voilà le résultat que me sort la commande diff :(
2,19c2,19 < Remote control interface initialized. Type 'help' for help. < > > +----[ Stream 0 ] < | < | Codec: H264 - MPEG-4 AVC (part 10) (avc1) < | Type: Video < | Frame rate: 25 < | Resolution: 640x480 < | < +----[ Stream 1 ] < | < | Sample rate: 44100 Hz < | Type: Audio < | Codec: MPEG AAC Audio (mp4a) < | Channels: Stereo < | < +----[ end of stream info ] < > Shutting down.Bye-bye! < > \ No newline at end of file --- > Remote control interface initialized. Type 'help' for help. > > > +----[ Stream 0 ] > | > | Codec: H264 - MPEG-4 AVC (part 10) (avc1) > | Type: Video > | Frame rate: 25 > | Resolution: 640x480 > | > +----[ Stream 1 ] > | > | Sample rate: 44100 Hz > | Type: Audio > | Codec: MPEG AAC Audio (mp4a) > | Channels: Stereo > | > +----[ end of stream info ] > > Shutting down.Bye-bye! > >
Personnellement je ne vois pas où est le problème dans mes deux fichiers qui semblent authentiques. Si vous pouvez m'aider pour comprendre cette sortie
alors là j'avoue que c'est un peu bizarre :s
Quand j'ouvre le fichier output avec un éditeur de fichier voilà ce qu'il m'affiche :
VLC media player 1.1.4 The Luggage
Remote control interface initialized. Type 'help' for help.
> > +----[ Stream 0 ]
|
| Codec: H264 - MPEG-4 AVC (part 10) (avc1)
| Type: Video
| Frame rate: 25
| Resolution: 640x480
|
+----[ Stream 1 ]
|
| Sample rate: 44100 Hz
| Type: Audio
| Codec: MPEG AAC Audio (mp4a)
| Channels: Stereo
|
+----[ end of stream info ]
> Shutting down.Bye-bye!
>
Maintenant quand je fais la commande que tu m'as donnée :
voilà ce qu'il m'affiche :
Là j'avoue que je n'y comprends rien, surtout que j'ai actualisé l'affichage de l'éditeur du texte
Edit: Pour le fichier test voilà la sortie que je reçois :
Et ce que m'affiche l'éditeur de texte :
VLC media player 1.1.4 The Luggage
Remote control interface initialized. Type 'help' for help.
> > +----[ Stream 0 ]
|
| Codec: H264 - MPEG-4 AVC (part 10) (avc1)
| Type: Video
| Frame rate: 25
| Resolution: 640x480
|
+----[ Stream 1 ]
|
| Sample rate: 44100 Hz
| Type: Audio
| Codec: MPEG AAC Audio (mp4a)
| Channels: Stereo
|
+----[ end of stream info ]
> Shutting down.Bye-bye!
>
(il y a pa de fdf à la fin)
Quand j'ouvre le fichier output avec un éditeur de fichier voilà ce qu'il m'affiche :
VLC media player 1.1.4 The Luggage
Remote control interface initialized. Type 'help' for help.
> > +----[ Stream 0 ]
|
| Codec: H264 - MPEG-4 AVC (part 10) (avc1)
| Type: Video
| Frame rate: 25
| Resolution: 640x480
|
+----[ Stream 1 ]
|
| Sample rate: 44100 Hz
| Type: Audio
| Codec: MPEG AAC Audio (mp4a)
| Channels: Stereo
|
+----[ end of stream info ]
> Shutting down.Bye-bye!
>
Maintenant quand je fais la commande que tu m'as donnée :
voilà ce qu'il m'affiche :
VLC media player 1.1.4 The Luggage$ Remote control interface initialized. Type 'help' for help.^M$ > > Shutting down.Bye-bye!^M$
Là j'avoue que je n'y comprends rien, surtout que j'ai actualisé l'affichage de l'éditeur du texte
Edit: Pour le fichier test voilà la sortie que je reçois :
Remote control interface initialized. Type 'help' for help.$ > > +----[ Stream 0 ]$ |$ | Codec: H264 - MPEG-4 AVC (part 10) (avc1)$ | Type: Video$ | Frame rate: 25$ | Resolution: 640x480$ |$ +----[ Stream 1 ]$ |$ | Sample rate: 44100 Hz$ | Type: Audio$ | Codec: MPEG AAC Audio (mp4a)$ | Channels: Stereo$ |$ +----[ end of stream info ]$ > Shutting down.Bye-bye!$ > fdf$
Et ce que m'affiche l'éditeur de texte :
VLC media player 1.1.4 The Luggage
Remote control interface initialized. Type 'help' for help.
> > +----[ Stream 0 ]
|
| Codec: H264 - MPEG-4 AVC (part 10) (avc1)
| Type: Video
| Frame rate: 25
| Resolution: 640x480
|
+----[ Stream 1 ]
|
| Sample rate: 44100 Hz
| Type: Audio
| Codec: MPEG AAC Audio (mp4a)
| Channels: Stereo
|
+----[ end of stream info ]
> Shutting down.Bye-bye!
>
(il y a pa de fdf à la fin)
Je t'ai demandé pour les 2 fichiers ;-((
le "$" (signe dollar) seul à la fin c'est la marque de fin de ligne sous Unix (\n), par contre un "^M$" c'est la marque d'un retour chariot suivi d'une fin de ligne (\r\n) que l'on trouve sous Windows ;-(
D'où ma demande concernant les 2 fichiers ;-\
Est-ce que ces 2 fichiers proviennent du même endroit (PC) ?
VLC media player 1.1.4 The Luggage$ Remote control interface initialized. Type 'help' for help.^M$ > > Shutting down.Bye-bye!^M$
le "$" (signe dollar) seul à la fin c'est la marque de fin de ligne sous Unix (\n), par contre un "^M$" c'est la marque d'un retour chariot suivi d'une fin de ligne (\r\n) que l'on trouve sous Windows ;-(
D'où ma demande concernant les 2 fichiers ;-\
Est-ce que ces 2 fichiers proviennent du même endroit (PC) ?