Connaissances Informatiques >> systèmes >> Unix >> Content
  Derniers articles
  • Script Unix Tutorial 
  • Comment Rechercher et remplacer dans…
  • Comment afficher le contenu d'un fic…
  • Comment faire un disque amorçable U…
  • Unix Tutorial pour les débutants 
  • Unix Shell Tutoriel 
  • Comment faire pour exécuter Unix De…
  • Comment faire pour installer SCO Uni…
  • Comment changer le mot de passe Expi…
  • Comment obtenir une ligne Nombre d'u…
  •   Unix
  • Compétences informatiques de base

  • Linux

  • Mac OS

  • Ubuntu

  • Unix

  • fenêtres

  • windows Vista

  • windows XP
  •  
    Unix

    Comment trouver la différence de temps dans Unix Script

    Si vous avez besoin de trouver la différence entre deux heures , si elles diffèrent que par quelques secondes ou en années, vous pouvez le faire dans la version GNU de Unix avec la commande "date" . Toutefois, la procédure n'est pas intuitive , que la commande date ne fournit pas directement d'un drapeau ou un argument pour cette procédure. En outre, plusieurs versions de la commande date existent dans Unix. Notez que ce qui fonctionne dans la version GNU de la commande date ne fonctionnera pas avec la version BSD . Unix Epoch

    La clé pour résoudre ce problème est de comprendre comment l'ordinateur conserve en fait la notion du temps . Un ordinateur Unix stocke toutes les fois que le nombre de secondes qui se sont écoulées depuis l' époque Unix. L'époque Unix est minuit du 1er Janvier , 1970.
    Obtenir les secondes depuis l'époque Unix

    Vous pouvez obtenir le nombre de secondes depuis l'époque Unix à une donnée date en utilisant une combinaison du drapeau "+ de % s" et la commande - "date" . Tapez la commande suivante dans un shell pour obtenir le nombre de secondes de l'époque Unix au 11 Mars 2011: Date de fermeture de

    - Date 2011-03-11 + % de
    la

    Le résultat sera : 1299823200 . Vous pouvez utiliser n'importe quel format de date et heure que vous pouvez analyser par la commande "date" dans ce script . Vous pouvez taper " man date " dans votre coquille à lire tous les formats de date valides .
    La solution

    Comme vous pouvez prendre n'importe quelle date donnée ou heure dans un format compatible Unix et convertir les secondes avant ou depuis l' époque Unix, vous pouvez trouver la différence entre deux fois en soustrayant les résultats de deux de ces commandes.

    Tapez les commandes suivantes dans votre shell: Photos

    d1 = `date - la date `

    d2 2011-03-11 + % = `date - Date 2010-05-12 + % s `
    < p> echo "$ ((( d1 -d2 ))) secondes différence "

    Dans les deux premières lignes , le caractère ` est pas un guillemet . Il s'agit d'un back- tique. Vous pouvez retrouver ce personnage à la gauche de la touche "1" sur un clavier standard US .

    La sortie devrait être la différence entre les deux fois en quelques secondes . Si vous avez besoin , vous pouvez convertir en minutes , heures, jours , et ainsi de suite en divisant par le nombre de secondes dans une minute, minutes dans une heure ou deux heures dans une journée .
    Un Script

    ce serait une nuisance pour taper ces trois longues commandes à chaque fois, vous devriez encapsuler dans un script. ! Ouvrez votre éditeur de texte favori et collez le code suivant :

    # /usr /bin /env bash

    d1 = `date - date 1 $`

    d2 + % = `date - date de 2 $`

    écho s + % "$ ( ( (d1 -d2 ))) secondes différence "

    change un peu les choses . La première ligne permet à l' enveloppe actuelle sachez que vous écrivez ce script pour utiliser le langage de la coquille " bash " . Comme vous remplacez les dates des deux commandes de date avec "$ 1 " et "2 $ ", vous pouvez passer de nouvelles dates pour le script chaque fois que vous exécutez. Une fois de plus , dans les deux premières lignes , vous utilisez le , une apostrophe arrière - tique ` pas .

    Enregistrez votre script avec le nom " timediff.sh " et exécutez la commande « chmod + x timediff.sh . " dans votre shell Unix pour laisser savoir qu'il a l'autorisation d'exécuter ce qu'un script

    fois que vous faites cela, vous pouvez trouver la différence entre deux dates et heures en tapant:

    . /timediff.sh 13/09/2010 14/01/1981

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Tutoriel pour Unix 
  • À propos Unix 
  • Comment connecter un direct UNIX NDM 
  • Comment nommer un fichier Unix Avec un tampon-date 
  • Comment construire un ordinateur compatible Unix 
  • Comment écrire un script shell sous Unix 
  • Comment afficher un message dans une fenêtre séparée dans Unix 
  • Comment tuer Connexions établies sous Unix par la commande netstat 
  • Avancée Unix Tutorial 
  • Comment faire pour récupérer les fichiers supprimés de SCO Unix 
  • Connaissances Informatiques © http://www.ordinateur.cc