Maison > Tutoriel système > Linux > Comment convertir les horodatages Unix en chaînes dans Linux

Comment convertir les horodatages Unix en chaînes dans Linux

William Shakespeare
Libérer: 2025-03-08 11:48:14
original
719 Les gens l'ont consulté

Les systèmes d'exploitation Linux et Unix utilisent souvent des horodatages pour représenter les dates et les temps dans un format lisible par machine. Cependant, pour les utilisateurs humains, ces horodatages peuvent être difficiles à interpréter. Dans cet article de blog, nous expliquerons le processus de conversion des horodatages UNIX en chaînes lisibles par l'homme dans Linux. Nous explorerons diverses méthodes et fournirons des exemples pratiques pour vous aider à comprendre et à mettre en œuvre ces techniques.

Catalogue

- Comprendre les horodatages Unix

    Pourquoi convertir les horodatages en chaînes?
  • Méthodes pour convertir les horodatages en chaînes
      1. Utilisez la commande de date
      1. Utilisez awk
      1. Utiliser Perl
      1. en utilisant python
      1. Utilisez la commande date avec le format personnalisé
  • cas d'utilisation pratique
      1. Enregistrement du journal et surveillance
      1. Traitement et analyse des données
      1. Automatisation et script
      1. Interface utilisateur
  • Exemple de cas d'utilisation: Système de surveillance Temps d'exécution
  • Conclusion

Comprendre l'horodatage Unix

Les horodatages UNIX sont des représentations numériques de secondes écoulées depuis le 1er janvier 1970 (appelé

Unix Era ). Par exemple, l'horodatage 1732579200 correspond à 00:00:00 UTC le 26 novembre 2024.

Pourquoi convertir les horodatages en chaînes?

Il y a de nombreux avantages à convertir des horodatages en chaînes:

  • lisibilité: Les utilisateurs humains peuvent facilement comprendre et interpréter les dates et les temps dans des formats lisibles.
  • Enregistrement du journal: Les journaux contiennent généralement des horodatages. Le convertir en une chaîne rend le journal plus accessible.
  • Traitement des données: Convertir des horodatages en chaînes simplifie l'analyse et les rapports lors du traitement des données.
Méthodes pour convertir les horodatages en chaînes

1. La commande

Date est un outil simple et largement utilisé pour convertir les horodatages en chaînes. Ce qui suit est de savoir comment l'utiliser:

ici,
<code>timestamp=1732579200</code>
Copier après la connexion
Copier après la connexion

L'horodatage est un nom de variable.
  • 1732579200 est la valeur attribuée à la variable d'horodatage. Cette valeur est un horodatage Unix, représentant le nombre de secondes écoulées depuis le 1er janvier 1970, connues sous le nom d'ère Unix.
Cette commande convertit l'horodatage 1732579200 en date et heure lisibles en fonction de l'homme.
<code>date -d @$timestamp</code>
Copier après la connexion
Copier après la connexion

ici,

Date est une utilitaire de ligne de commande dans Linux pour afficher ou définir les dates et les heures du système.
  • -d est une option de la commande date qui vous permet de spécifier la chaîne de date ou l'horodatage à afficher.
  • @ $ L'horloge est le paramètre transmis à l'option -D. Ici, @ est un préfixe spécial reconnu par la commande Date, indiquant que la valeur suivante est un horodatage Unix.
  • $ L'horodatage est une variable qui contient la valeur d'horodatage UNIX (1732579200).
  • La commande ci-dessus renvoie la sortie suivante dans mon système Debian 12:
<code>timestamp=1732579200</code>
Copier après la connexion
Copier après la connexion

How To Convert Unix Timestamps To Strings In Linux

2.

awk est un puissant outil de traitement de texte qui peut également convertir les horodatages en chaînes. Voici un exemple de commande:

<code>date -d @$timestamp</code>
Copier après la connexion
Copier après la connexion
Cette commande sort la date et l'heure dans le format Yyyy-mm-dd HH: MM: SS.

Exemple de sortie :

<code>星期二 2024 年 11 月 26 日 上午 05:30:00 IST</code>
Copier après la connexion
3.

perl est un autre langage de script qui peut gérer la conversion d'horodatage. Ce qui suit est de savoir comment l'utiliser:

Cette commande imprime la date et l'heure au format par défaut.
<code>timestamp=1732579200echo $timestamp | awk '{print strftime("%Y-%m-%d %H:%M:%S", )}'</code>
Copier après la connexion

Exemple de sortie

:

4.
<code>2024-11-26 05:30:00</code>
Copier après la connexion
Copier après la connexion
Python est une langue polyvalente qui peut facilement convertir les horodatages en chaînes. Voici un exemple:

Cette commande sort la date et l'heure dans le format Yyyy-mm-dd HH: MM: SS.

<code>timestamp=1732579200perl -e "print scalar(localtime($timestamp))"</code>
Copier après la connexion

Exemple de sortie

:

5.

Si vous avez besoin d'un format spécifique, vous pouvez utiliser la commande Date avec des options de mise en forme personnalisées:
<code>Tue Nov 26 05:30:00 2024</code>
Copier après la connexion

Cette commande sort la date et l'heure dans le format Yyyy-mm-dd HH: MM: SS.

cas d'utilisation pratique
<code>timestamp=1732579200python3 -c "import datetime; print(datetime.datetime.fromtimestamp($timestamp).strftime('%Y-%m-%d %H:%M:%S'))"</code>
Copier après la connexion

1.

Convertir les horodatages en chaînes pour rendre le journal plus facile à comprendre lors du traitement des fichiers journaux:

2.

Convertir les horodatages en chaînes pour rendre les données plus faciles à accéder lors du traitement des fichiers CSV:

<code>2024-11-26 05:30:00</code>
Copier après la connexion
Copier après la connexion
3.

Les scripts qui exécutent les tâches planifiées nécessitent généralement un temps d'exécution d'enregistrement. La conversion de l'heure actuelle en une chaîne aide à enregistrer:

4.
<code>timestamp=1732579200date -d @$timestamp +"%Y-%m-%d %H:%M:%S"</code>
Copier après la connexion
Les applications Web affichent généralement des horodatages aux utilisateurs. La conversion des horodatages Unix en chaînes garantit que les utilisateurs voient des formats de date et d'heure lisibles:

Exemple de cas d'utilisation: Système de surveillance Temps d'exécution

<code>grep "error" /var/log/syslog | awk '{print strftime("%Y-%m-%d %H:%M:%S", ), <pre class="brush:php;toolbar:false"><code>cat data.csv | awk -F, '{print strftime("%Y-%m-%d %H:%M:%S", ), , }'</code>
Copier après la connexion
}' Supposons que vous ayez un script qui surveille l'exécution du serveur et enregistre les résultats. Vous voudrez peut-être inclure un horodatage lisible par l'homme dans votre fichier journal:

Enregistrez ce qui précède dans un fichier, tel que sysuptime.sh. Faites-le exécutable en utilisant la commande suivante:

<code>timestamp=$(date +%s)
date -d @$timestamp >> task_log.txt</code>
Copier après la connexion

Exécuter le script:

Après l'exécution de ce script, le temps d'exécution total du système Linux sera écrit dans le fichier ~ / system_uptime.log.
<code>from datetime import datetimetimestamp = 1732579200readable_date = datetime.fromtimestamp(timestamp).strftime('%Y-%m-%d %H:%M:%S')print(readable_date)</code>
Copier après la connexion

Vous pouvez le vérifier en affichant le contenu de ce fichier:

#!/bin/bash

# 获取当前 Unix 时间戳
timestamp=$(date +%s)

# 将时间戳转换为人类可读的字符串
readable_date=$(date -d @$timestamp +"%Y-%m-%d %H:%M:%S")

# 获取系统运行时间
uptime=$(uptime -p)

# 记录结果
echo "[$readable_date] 系统运行时间:$uptime" >> ~/system_uptime.log
Copier après la connexion

Conclusion

chmod +x sysuptime.sh
Copier après la connexion
Comme vous pouvez le voir, la conversion des horodatages en chaînes est très simple et simple. Il s'agit d'une tâche de base dans Linux qui peut améliorer la lisibilité et la disponibilité des données.

Que vous traitez les journaux, le traitement des données ou le développement d'une application, comprendre comment convertir les horodatages en chaînes rendra vos tâches plus faciles et plus efficaces.

En utilisant les méthodes décrites dans cet article de blog, vous pouvez facilement gérer la conversion d'horodatage dans un environnement Linux.
./sysuptime.sh
Copier après la connexion

Readings connexes

:

  • Comment trouver des horodatages Unix pour des dates et des temps spécifiques dans Linux
  • Explication détaillée et exemples d'horodatage du fichier Linux

L'image reste dans le format d'origine.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal