web-dev-qa-db-fra.com

Obtenir la dernière date de modification du fichier sous Linux

Je suis nouveau sur Linux. J'utilise la ligne de commande. J'essaie de voir la dernière date de modification d'un fichier. Comment faire cela sous Linux à partir de la ligne de commande?

126
user70192

Comme mentionné par @ edvinas.me, stat vous indique diverses informations sur le fichier, y compris la date de la dernière modification.

Au début, j'ai été confondu avec Modifier et Changer , juste pour clarifier, les listes de sortie stat:

  • Accès indique l'heure du dernier accès aux données (par exemple, lu).
  • Modify indique l'heure de la dernière modification des données.
  • Modifier indique l'heure de la dernière modification du statut du fichier.

Par exemple:

~ $ touch foo
~ $ stat foo
File: ‘foo’
Size: 0             Blocks: 0          IO Block: 4096   regular empty file
Device: fc01h/64513d    Inode: 410397      Links: 1
Access: (0644/-rw-r--r--)  Uid: (80972/ etomort)   Gid: (18429/  eem_tw)
Access: 2015-09-21 12:06:11.343616258 +0200
Modify: 2015-09-21 12:06:11.343616258 +0200
Change: 2015-09-21 12:06:11.343616258 +0200
Birth: -

~ $ echo "Added bar to foo file" >> foo
~ $ stat foo
File: ‘foo’
Size: 42            Blocks: 8          IO Block: 4096   regular file
Device: fc01h/64513d    Inode: 410654      Links: 1
Access: (0644/-rw-r--r--)  Uid: (80972/ etomort)   Gid: (18429/  eem_tw)
Access: 2015-09-21 12:09:31.298712951 +0200
Modify: 2015-09-21 12:09:31.298712951 +0200
Change: 2015-09-21 12:09:31.302713093 +0200
Birth: -

~ $ chmod 444 foo
~ $ stat foo
File: ‘foo’
Size: 42            Blocks: 8          IO Block: 4096   regular file
Device: fc01h/64513d    Inode: 410654      Links: 1
Access: (0444/-r--r--r--)  Uid: (80972/ etomort)   Gid: (18429/  eem_tw)
Access: 2015-09-21 12:09:31.298712951 +0200
Modify: 2015-09-21 12:09:31.298712951 +0200
Change: 2015-09-21 12:10:16.040310543 +0200
Birth: -
113
nephewtom

Utilisez la commande stat pour cela:

$ stat file
61
phoops

Une autre façon plus flexible consiste à utiliser date -r. De man date:

-r, --reference=FILE
       display the last modification time of FILE

Cela présente l’avantage de vous permettre de spécifier le format de sortie, par exemple.

$ date -r foo
Thu Aug 31 10:36:28 AEST 2017
$ date -r foo -R
Thu, 31 Aug 2017 10:36:28 +1000
$ date -r foo -u
Thu Aug 31 00:36:28 UTC 2017
$ date -r foo +%s
1504139788
27
Sparhawk

ls -l devrait faire le travail.

Exemple:

#> ls -l /home/TEST/
total 16

-rw-r--r--   1 rfmas1   nms          949 Nov 16 12:21 create_nd_lists.py

-rw-r--r--   1 rfmas1   nms            0 Nov 16 12:35 enb_list

-rw-r--r--   1 rfmas1   nms            0 Nov 16 12:35 nb_list

-rw-r--r--   1 rfmas1   nms            0 Nov 16 12:35 nodes_ip.txt

-rw-r--r--   1 rfmas1   nms            0 Nov 16 12:35 rnc_list
14
Linh Hoang

Si le fichier se trouve sur un autre serveur Web, j'aime bien httpie ( docs ).

Installation

pip install httpie --user

Usage

La commande -h donne uniquement l'en-tête. Le motif est

http -h [url] | grep 'Last-Modified\|Date'

Exemple:

$ http -h https://martin-thoma.com/author/martin-thoma/ | grep 'Last-Modified\|Date'
Date: Fri, 06 Jan 2017 10:06:43 GMT
Last-Modified: Fri, 06 Jan 2017 07:42:34 GMT

La Date est importante car elle indique l'heure du serveur, pas votre heure locale. De plus, tous les serveurs n’envoient pas Last-Modified (par exemple, le superutilisateur ne semble pas le faire).

2
Martin Thoma

1) Répertoire des fichiers avec date/heure de la dernière modification

Pour lister les fichiers et afficher les derniers fichiers modifiés en haut, nous allons utiliser les options -lt avec la commande ls.

$ ls -lt /run
output
total 24
-rw-rw-r--.  1 root utmp 2304 Sep  8 14:58 utmp
-rw-r--r--.  1 root root    4 Sep  8 12:41 dhclient-eth0.pid
drwxr-xr-x.  4 root root  100 Sep  8 03:31 lock
drwxr-xr-x.  3 root root   60 Sep  7 23:11 user
drwxr-xr-x.  7 root root  160 Aug 26 14:59 udev
drwxr-xr-x.  2 root root   60 Aug 21 13:18 tuned

https://linoxide.com/linux-how-to/how-sort-files-date-using-ls-command-linux/

1
Jon Harper