Pages : 1
#1 Le 16/11/2006, à 03:59
- bog333
shell script
bonjour,
j'aimerait comparer le contenue de deux fichier text et savoir s'il sont pareil comment pourrais-je faire cela
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#2 Le 16/11/2006, à 07:49
- abetsic
Re : shell script
avec la commande :
diff fichier1 fichier2
Il existe des logiciels qui permettent de visualiser les différences entre deux fichier plus facilement, sous kde il y a kompare, sous gnome je ne connais pas....
Sinon tu peux utiliser gvimdiff fichier1 fichier2
Hors ligne
#3 Le 20/11/2006, à 19:33
- bog333
Re : shell script
merci pour la réponse, cela fonctionne très bien.
maintenant j'ai un autre petit problème, jutilise la commande suivante:
lpq>>temp
mais j'aimerait qu'il n'y ai rien qui s'affiche sur l'écran, comment faire
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#4 Le 20/11/2006, à 19:52
- abetsic
Re : shell script
Quand tu fais une redirection de flux, c'est uniquement le flux standard qui est redirigé vers le fichier (temp dans ton cas) du coup le flux d'erreur est toujours affiché à l'écran.
Pour que le flux d'erreur soit écrit dans le fichier il faut faire
lpq &>> temp
Pour qu'il ne soit ni affiché ni écrit dans temp :
lpq >> temp 2> /dev/null
si je ne me trompe pas...
Hors ligne
#5 Le 20/11/2006, à 22:24
- bog333
Re : shell script
J'aimerais aussi qu'il n'y ait rien d'afficher lorsque je fait ce test (etat et temp sont deux fichier text):
if diff etat temp
then
test1=0
else
test1=1
fi
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#6 Le 21/11/2006, à 00:02
- abetsic
Re : shell script
tu peux plutot utiliser la valeur de retour de diff qui vaut 0 si les deux fichiers sont identiques, autre chose si ils sont différents ou si il y a eu une erreur :
diff etat temp
test1=$? # $? est la variable qui contient la valeur de retour de la dernière commande effectuée, ici "diff etat temp"
Et faire le reste de ton script avec ça.
Hors ligne
#7 Le 21/11/2006, à 14:46
- bog333
Re : shell script
merci, pour tout, sa fonctionne
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
Pages : 1