#1 Le 29/05/2017, à 23:24
- josran
[Résolu] Trouver le plus récent sous-répertoire créé
Bonjour,
J'ai cherché en vain dans une iongue liste de sites comment trouver le plus récent sous-répertoire créé à l'intérieur d'un répertoire. On trouve des tas de résultats pour un fichier mais pour un répertoire c'est beaucoup plus rare et généralement tellement complexe que j'ai du mal à comprendre.
La méthode la plus approchante que j'aie trouvée est celle-ci:
find . -maxdepth 1 -type f -newer first_file
Je sais remplacer "-type f" par "-type d" mais dans le site où j'ai trouvé cette commande, "first_file" n'est pas commenté et je ne vois par quoi il faut le remplacer.
Dernière modification par josran (Le 30/05/2017, à 03:51)
Hors ligne
#2 Le 30/05/2017, à 02:00
- Watael
Re : [Résolu] Trouver le plus récent sous-répertoire créé
salut,
first_file est un fichier préexistant dont la date sert à trouver les fichiers plus récents (-newer).
pour afficher le répertoire le plus récent, tu pourrais, avec find,
afficher les noms des répertoires ET leur date (en secondes depuis EPOCH) avec -printf, puis
trier (sort) sur la date, et
ne retenir que le premier (head ou tail).
Dernière modification par Watael (Le 30/05/2017, à 02:03)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 30/05/2017, à 03:48
- josran
Re : [Résolu] Trouver le plus récent sous-répertoire créé
Merci, Watael, de cette réponse qui ne m'apporte pas la solution clés en mains que j'espérais et me semble nécessiter un bac+5 en Linux (que je n'ai pas)
Je suis donc reparti en quête d'une solution et j'ai mis la main sur ceci :
find -type f -printf '%T+ %p\n' | sort | tail -n 1
que j'ai transformé en cela :
find . -maxdepth 1 -type d -printf '%T+ %p\n' | sort | tail -n 1
Et ça marche !
Hors ligne
#4 Le 30/05/2017, à 21:28
- moko138
Re : [Résolu] Trouver le plus récent sous-répertoire créé
Puisque tu ne descends, semble-t-il, que d'un degré dans les sous-répertoires, il y a plus simple :
ls -lt /mon/chemin | grep ^d | head -1
Ex :
ls -lt /etc | grep ^d | head -1
drwxr-xr-x 9 root root 4096 mai 25 09:38 apparmor.d
ou
ls -lt /var/log | grep ^d | head -1
drwxr-xr-x 2 root root 12288 mai 30 08:12 upstart
ou encore :
ls -lt / | grep ^d | head -1
drwxrwxrwt 6 root root 4096 mai 30 22:17 tmp
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne