![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| Fichier journal de ne pas avoir mis à jour | KornFire | High Level Programming | 4 | 10-21-2008 04:12 AM |
| Trouver la dernière mise à jour de fichiers | callimaco0082 | UNIX pour les nuls Questions et réponses | 4 | 09-04-2008 11:17 AM |
| consulter le dernier fichier mis à jour | asadlone | De programmation et de script Shell | 3 | 05-08-2008 05:16 AM |
| /etc / utmp file n'est pas mis à jour avec le démarrage de détails | jyoti_mil | UNIX for Advanced & Expert Users | 1 | 06-11-2007 11:41 AM |
| Création d'un fichier mis à jour | dbfree | De programmation et de script Shell | 4 | 09-30-2005 04:23 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Si le fichier a été mis à jour, faire quelque chose?
Mettez tout cela ensemble d'ailleurs sur le forum, juste modifié et ajouté de la boucle. Code:
#!/bin/ksh localFile=$1 remoteFile=$2 #source FTP parameters . .ftp_put.cfg mylog=ftp_session.log echo "$(date "+%H:%M:%S") - Attempt to FTP $1 to $2" > $mylog machine="server1 server2 server3 server4" count=0 # do the FTP put for machine in $machine do ftp -i -n <<EOF >> $mylog open $machine user $FTP_LOGIN $FTP_PASSWORD put $localFile $remoteFile ls $remoteFile quit EOF count=`expr $count + 1` done Ce script est appelé par un autre script par le biais d'une tâche cron toutes les 5 minutes: Code:
/tmp/abcQATest/abcMoveTest.sh archive.tar /tmp/archive.tar De toute façon, je me demandais si il n'y a aucune façon de la rendre un peu mieux. Actuellement, ce tout simplement que le ftp fichier statique toutes les 5 minutes, indépendamment de si le fichier a été mis à jour ou non. La manière dont il travaille maintenant est de savoir si quelqu'un a besoin de faire une mise à jour pour les 4 du serveur FTP que ce script à la, ils ont tout simplement abandonner leurs archives fichier (nommé archive.tar) à la / tmp / abcQATest répertoire, puis dans les 5 minutes, le crontab s'exécute et un serveur ftp de leur dossier à 1-4 au serveur / tmp / archive.tar emplacement. Est-il possible de configurer cela si elle ne le ftp le fichier si il a été mis à jour depuis la dernière fois que le ftp était? De cette façon, si elle est mise à jour, il se FTP'd de fois, mais alors on ne peut pas faire FTP'd de nouveau à moins que le fichier a été changé? Ensuite, sur les 4 autres serveurs, j'ai aussi besoin de quelque chose comme ceci: Code:
If /tmp/archive.tar has been updated do something . . else endif Le faire quelque chose est juste un couple se déplace rapidement, des extraits et supprime, c'est pas grave. If It's Je suis perplexe sur. |
|
||||
|
Scénario: Code:
diff archive.tar backup.tar > tmp if [ -s tmp ]; then /tmp/abcQATest/abcMoveTest.sh archive.tar /tmp/archive.tar echo "Files different, transferring files" else echo "Files the same, exiting"; fi Résultats: Code:
/tmp/abcQATest>./autoMoveScript.sh Binary files archive.tar and backup.tar differ Files the same, exiting /tmp/abcQATest> Les fichiers binaires ne diffèrent, mais pour une raison quelconque, il va toujours à la deuxième partie de l'if. Dernière édition par cbo0485; au 11.06.2008 05:17 PM.. |
|
||||
|
Citation:
Code:
diff archive.tar backup.tar > tmp if [ -a tmp ]; then /tmp/abcQATest/abcMoveTest.sh archive.tar /tmp/archive.tar echo "Files different, transferring files" cat archive.tar > backup.tar else echo "Files the same, exiting"; fi |
|
||||
|
Voici mon code final j'ai eu à travailler. Code:
cmp archive.tar backup.tar > /dev/null if [[ $? -eq 1 ]]; then /tmp/abcQATest/abcMoveTest.sh archive.tar /tmp/archive.tar echo "Files different, transferring files" cat archive.tar > backup.tar else echo "Files the same, exiting"; fi |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|