Je souhaite trouver si certains fichiers sont modifiés dans les trois dernières minutes afin de décider si le merci p> cp code> a réussi, et si je devais
Quitter code> ou poursuivre le script . Comment puis-je faire ça? P>
5 Réponses :
La commande stat vous donnera la dernière heure de modification
stat -c %y <filename>
La syntaxe de cette instruction Si l'instruction dépend de votre shell particulier, mais les commandes de date ne le font pas. J'utilise Bash; Modifier si nécessaire.
if [ $(( $(date +%s) - $(date +%s -r <file>) )) -le 180 ]; then # was modified in last three minutes else # was not modified in last three minutes fi
Vous pouvez obtenir la dernière heure de modification d'un fichier avec alors, il est assez facile de mettre cela dans une condition. Par exemple: p> stat code> et la date actuelle avec
date code>. Vous pouvez utiliser des chaînes de format pour les deux pour les obtenir en "secondes depuis l'époque":
Comment largement prise en charge est stat -c% y code>? Sur OS X, j'utiliserais
stat -f% m code>, mais sur certains flavors Linux
stat -f code> affiche les informations de système de fichiers. La plupart des systèmes supportent
date -r "$ dossier" +% s code>, mais pour être maladroit qui ne fonctionne pas sur OS X ... Fun Stuff :)
Qu'est-ce que 180 dans la "si condition"? Est-ce en secondes ou des jours?
Un changement d'horodatage de fichier ne signifie pas vraiment que vous avez copié avec succès.
Si vous atterrissez en corrompre le fichier ou que le système de fichiers est sorti de l'espace,
Vous verrez probablement toujours un changement d'horodatage (besoin de confirmer cela). P>
Je n'ai pas le contexte exact de votre exigence. Comment et pourquoi sortiriez-vous partiellement dans un
Si vous tirez un cp code>, il se termine et renvoie - ne retourne pas pendant qu'il fonctionne.
Donc, le retour (avec le code de sortie du succès) n'est-il pas un bon indicateur du succès? p>
CP code> opération?
Ou, est-ce un script BATCH CP CODE> CP CODE> sur la liste des fichiers ...
une certaine élaboration aiderait. P>
Le CP est effectué dans un script et la vérification est effectuée dans un autre script. Il n'existera donc pas le CP au milieu. Au fait, comment puis-je obtenir la vérification du code existant de CP? Merci
Recherche peut émettre le nom du fichier s'il a été modifié au cours des 3 dernières minutes.