Comparer un fichier local avec un fichier distant - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 14-12-2004 à 15:51:42
ssh machine ls -l <nom_fichier>|awk '{print $5}'
mais tu ferais mieux d'utiliser un procole dédié, du genre rsync
Marsh Posté le 14-12-2004 à 16:00:44
merci pour l'aide sur la commande... et pour ton conseil !
Marsh Posté le 14-12-2004 à 16:01:17
benj63 a écrit : Bonjour, je souhaiterais comparer via SSH un fichier local, et un fichier sur un serveur distant... |
J'ai un doute de l'utilité de la commande ls pour comparer deux fichiers... tu devrais peut être regarder du coté de md5sum...
Marsh Posté le 14-12-2004 à 16:04:37
tu penses qu'une comparaison sur la taille des fichiers n'est pas suffisante ?
edit : si je compare les md5sum, ce serait mieux ??
Marsh Posté le 14-12-2004 à 16:11:44
benj63 a écrit : tu penses qu'une comparaison sur la taille des fichiers n'est pas suffisante ? |
Ben si quelqu'un s'amuse à changer des caractères sans en ajouter ni en enlever, les fichiers auront la même longueur, mais auront des signatures md5 différentes.
Marsh Posté le 14-12-2004 à 18:24:59
ory a écrit : rsync |
+1
mais la solution avec md5sum peut-être efficace mais lourd si les fichiers sont lourds
D'ailleurs je pense que rsync s'arrête à la comparaison des infos sur le fichiers (date et/ou taille) ? à confirmer
Marsh Posté le 14-12-2004 à 18:38:56
bobuse a écrit : +1 |
non, il utilise un algorithme de hashage, MD4 il me semble
Marsh Posté le 15-12-2004 à 08:55:31
oui les fichiers sont très lourds (500 Mo) etj'ai abandonné l'idée des md5sum...
Marsh Posté le 14-12-2004 à 15:41:13
Bonjour, je souhaiterais comparer via SSH un fichier local, et un fichier sur un serveur distant...
En effet, je suis en train de réaliser un code qui archive des fichiers vers un serveur distant, et je souhaiterais être certain que les fichiers ont bien été transmis par scp sur le serveur distant avant de les supprimer automatiquement sur mon poste local !
Je récupère la taille du fichier envoyé par "ls -l <nom_du_fichier> | awk '{print $5}'", sur mon poste local... Mais comment faire pour savoir si elle est identique sur le serveur distant ? Je précise que j'accède au serveur distant par ssh sans mot de passe (avec des clés RSA).
Merci pour vos idées !