[LINUX] Comment afficher la date de modification d'un fichier en langage C jusqu'à nanosecondes

Il s'agit d'une méthode pour afficher la date et l'heure de modification du fichier en langage C jusqu'à nanosecondes. Le but est de vérifier les mises à jour régulières des fichiers.

À propos de l'environnement

-Linux noyau 2.5.48 ou supérieur ・ Système de fichiers XFS, JFS, Btrfs, ext4 Pour les systèmes de fichiers autres que ceux ci-dessus, les nanosecondes peuvent être affichées sous la forme 0.

La source

nsec_show.c


#include <stdio.h>
#include <sys/stat.h>
#include <errno.h>
#include <time.h>

int main(int argc, char *argv[])
{
    int i;
    struct stat st;
    char date_str[256];

    /* argc check */
    if (argc != 2) {
        printf("USAGE:%s <FILE PATH>\n", argv[0]);
        return 1;
    }

    /* get stat */
    if (stat(argv[1], &st) != 0) {
        printf("%s\n", strerror(errno));
        return 1;
    }

    /* show */
    strftime(date_str, 255, "%Y%m%d%H%I%M%S", localtime(&st.st_mtime));
    printf("%s.%09ld\n",date_str, st.st_mtim.tv_nsec);

    return 0;
}

Contrôle de fonctionnement

Après la compilation, lorsque vous l'exécutez, il s'affichera comme suit.

$ gcc nsec_show.c  -o nsec_show
$ ./nsec_show ./nsec_show.c
20170305063637.656058532

En passant, il correspond aux nanosecondes affichées par la commande ls.

$ ls ./nsec_show.c --full-time
-rw-rw-r--. 1 miyabi miyabi 581 2017-03-05 06:36:37.656058532 +0900 ./nsec_show.c

Les références

STAT CLOCK_GETRES

Recommended Posts

Comment afficher la date de modification d'un fichier en langage C jusqu'à nanosecondes
Comment limiter la publication de l'API dans la bibliothèque partagée en langage C de Linux
Comment afficher le maillage régional du Government Statistics Office (eStat) dans un navigateur Web
Comment afficher une colonne de fichiers spécifiée sous Linux (awk)
Comment déterminer l'existence d'un élément sélénium en Python
Comment vérifier la taille de la mémoire d'une variable en Python
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Comment afficher le résultat de sortie de la commande man Linux dans un fichier
Comment obtenir les coordonnées de sommet d'une entité dans ArcPy
Comment spécifier un fichier .ui dans la boîte de dialogue / interface graphique du widget dans PySide
Comment mettre un numéro de ligne au début d'un fichier CSV
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
J'ai essayé d'afficher la valeur d'altitude du DTM dans un graphique
Comment calculer la volatilité d'une marque
Comment utiliser la bibliothèque C en Python
[Python] Comment changer le format de la date (format d'affichage)
Comment créer un fichier JSON en Python
Méthode de contrôle exclusive multi-processus en langage C
Configurer un serveur UDP en langage C
Comment lire des fichiers dans différents répertoires
Une histoire d'essayer d'améliorer le processus de test d'un système vieux de 20 ans écrit en C
Différentes façons de lire la dernière ligne d'un fichier csv en Python
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python
Comment mentionner un groupe d'utilisateurs avec une notification de mou, comment vérifier l'ID d'un groupe d'utilisateurs
Comment compter le nombre d'éléments dans Django et sortir dans le modèle
Un mémorandum expliquant comment exécuter la commande magique! Sudo dans Jupyter Notebook
Comment obtenir une liste de fichiers dans le même répertoire avec python
Comment enregistrer les informations de point caractéristique de l'image dans un fichier et l'utiliser pour la mise en correspondance
Essayez de créer un module Python en langage C
Comment obtenir le nombre de chiffres en Python
Comment afficher plusieurs images d'une galaxie en tuiles
Comment afficher DataFrame sous forme de tableau dans Markdown
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
[Ubuntu] Comment supprimer tout le contenu du répertoire
Comment trouver le nombre optimal de clusters pour les k-moyennes
Comment utiliser la méthode __call__ dans la classe Python
Changer la destination de sortie standard en un fichier en Python
Comment importer des fichiers où vous le souhaitez en Python
Comment implémenter provisoirement une barre de progression dans un langage de script
J'ai essayé d'illustrer le temps et le temps du langage C
Comment développer dans un environnement virtuel Python [Memo]
Comment générer une requête à l'aide de l'opérateur IN dans Django
[Note] Importation de fichiers dans le répertoire parent en Python
Comment afficher une liste des versions installables avec pyenv
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Comment obtenir une liste d'exceptions intégrées pour python
Comment voir le contenu du fichier ipynb du notebook Jupyter
Comment trouver le coefficient de mise à l'échelle d'une ondelette bipolaire
Comment connecter le contenu de la liste dans une chaîne de caractères
[Linux] [C / C ++] Comment obtenir la valeur d'adresse de retour d'une fonction et le nom de fonction de l'appelant
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
[Super facile! ] Comment afficher le contenu des dictionnaires et des listes incluant le japonais en Python
Comment compter rapidement la fréquence d'apparition des caractères à partir d'une chaîne de caractères en Python?
Comment représenter la distribution de la composition bactérienne à partir des données d'analyse Qiime2 dans un diagramme de moustaches
Comment afficher une ligne spécifiée d'un fichier ou d'un résultat de commande sous Linux (sed, awk)
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python (version non bloquante)
Comment créer un LINE BOT 004 interactif (répondre à la date de clôture d'une société cotée)
[Python] À propos de la création d'un outil pour afficher toutes les pages du site Web enregistrées dans le fichier JSON et où il a été pris
Exporter la liste de clés incluse dans S3 Bucket dans un fichier