[Console] Fichier le plus vieux
Résolu
Flippy18
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
KuKrApOk59 Messages postés 437 Date d'inscription Statut Membre Dernière intervention -
KuKrApOk59 Messages postés 437 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je découvre petit à petit Linux, et je suis entrain de me créer une sauvegarde automatique de mes mails-Thunderbird par console.
J'ai fais mumuse avec Crontab, et j'ai maintenant une sauvegarde quotidienne de mes mais, avec suppression de l'archive la plus ancienne (en gros, à n'importe quel moment, j'ai une sauvegarde des 10 derniers jours).
Malgré mon écumage (partiel ?) du net, je suis à présent bloqué.
J'aimerais maintenant que, régulièrement (genre toutes les semaines), l'archive la plus ancienne soit copiée-collée dans un autre répertoire. Tout ce que j'ai trouvé, avec "find", c'est : je veux LES fichiers plus vieux que "tel date". Or, je ne souhaite pas un filtre relatif, mais un filtre absolu.
Est-ce que quelqu'un peut me dire comment copier-coller le fichier le plus vieux d'un répertoire ?
Merci d'avance pour vos hypothétique réponses !
@++
Flippy
Je découvre petit à petit Linux, et je suis entrain de me créer une sauvegarde automatique de mes mails-Thunderbird par console.
J'ai fais mumuse avec Crontab, et j'ai maintenant une sauvegarde quotidienne de mes mais, avec suppression de l'archive la plus ancienne (en gros, à n'importe quel moment, j'ai une sauvegarde des 10 derniers jours).
Malgré mon écumage (partiel ?) du net, je suis à présent bloqué.
J'aimerais maintenant que, régulièrement (genre toutes les semaines), l'archive la plus ancienne soit copiée-collée dans un autre répertoire. Tout ce que j'ai trouvé, avec "find", c'est : je veux LES fichiers plus vieux que "tel date". Or, je ne souhaite pas un filtre relatif, mais un filtre absolu.
Est-ce que quelqu'un peut me dire comment copier-coller le fichier le plus vieux d'un répertoire ?
Merci d'avance pour vos hypothétique réponses !
@++
Flippy
A voir également:
- [Console] Fichier le plus vieux
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
5 réponses
Salut,
Pour facilement récupérer le fichier le plus vieux d'un répertoire : ls :)
$ ls -lt
va te donner la liste des fichiers (et dossiers) triés par ordre d'âge.
le dernier est le plus vieux
ex, chez moi :
Pour avoir *juste* le dernier
lord@Bender:/tmp$ ls -lt | tail -1
drwx------ 2 root root 16384 fév 22 2010 lost+found
Et si seul le nom du fichier t'interesse, il y a une option de ls
qui n'affiche que le nom du fichier
Est ce que c'est ce qu cherchais ?
Si vous avez votre réponse, pensez à spécifier : [Résolu]
Pour facilement récupérer le fichier le plus vieux d'un répertoire : ls :)
$ ls -lt
va te donner la liste des fichiers (et dossiers) triés par ordre d'âge.
le dernier est le plus vieux
ex, chez moi :
ord@Bender:/tmp$ ls -lt /tmp drwx------ 3 lord lord 4096 sep 16 11:41 gconfd-lord -rw-r--r-- 1 root root 4383658 mar 3 2010 nxclient_3.4.0-7_i386.deb drwx------ 2 root root 16384 fév 22 2010 lost+found
Pour avoir *juste* le dernier
lord@Bender:/tmp$ ls -lt | tail -1
drwx------ 2 root root 16384 fév 22 2010 lost+found
Et si seul le nom du fichier t'interesse, il y a une option de ls
qui n'affiche que le nom du fichier
lord@Bender:/tmp$ ls -c1 -t | tail -1 lost+found
Est ce que c'est ce qu cherchais ?
Si vous avez votre réponse, pensez à spécifier : [Résolu]
lord@Bender:/tmp/plop$ ls -l total 0 -rw-r--r-- 1 lord lord 0 déc 28 18:04 ancien -rw-r--r-- 1 lord lord 0 déc 28 18:06 nouveau
Il s'agit donc de faire un cp du fichier 'ancien'
J'utilise la commandes permettant de récupérer le nom du fichier a déplacer à l'intérieur de ''
Pourquoi ?
Parce que ça exécute la commande qui s'y trouve et répond le résultat
ex :
lord@Bender:/tmp/plop$ echo "'date'" mardi 28 décembre 2010, 18:09:45 (UTC+0100)
correspond en fait à
echo "mardi 28 décembre 2010, 18:09:45 (UTC+0100)"
Ce qui donne dans le cas qui nous interesse :
lord@Bender:/tmp/plop$ cp 'ls -c1 -t | tail -1' /tmp/plop/fichier_copie
lord@Bender:/tmp/plop$ ls -l
total 0
-rw-r--r-- 1 lord lord 0 déc 28 18:04 ancien
-rw-r--r-- 1 lord lord 0 déc 28 18:07 fichier_copie
-rw-r--r-- 1 lord lord 0 déc 28 18:06 nouveau
Ce n'est pas forcément la plus classe,
Mais en juste une ligne, je n'ai pas mieux en tête
Tout d'abord, merci de ta réponse.
J'étais arrivé à une solution de ce type. C'est surtout l'étape d'après qui me bloque.
Dois-je faire une commande du type :
et si tel est le cas, est-il possible de m'indiquer la syntaxe exacte ?
J'étais arrivé à une solution de ce type. C'est surtout l'étape d'après qui me bloque.
Dois-je faire une commande du type :
cp ls -lt | tail -1 (dossier de destination)
et si tel est le cas, est-il possible de m'indiquer la syntaxe exacte ?
Cette solution est quasiment parfaite. Pour le côté "Classe", je m'en contenterais, je préfère décomposer les suites de code. Plus facile pour comprendre :p
Il me reste cependant une question :
Ceci fonctionne si je me trouve dans le bon répertoire (lord@Bender:/tmp/plop$)
Mais moi, j'aimerais que cette commande s'exécute lorsque que la console n'est pas dans le bon répertoire, mais plutôt dans l'arborescence de base (lord@Bender:$ ou quelque chose comme ça)
En tout cas, merci de ton aide. J'avance a pas de géant !
Il me reste cependant une question :
cp 'ls -c1 -t | tail -1' /tmp/plop
Ceci fonctionne si je me trouve dans le bon répertoire (lord@Bender:/tmp/plop$)
Mais moi, j'aimerais que cette commande s'exécute lorsque que la console n'est pas dans le bon répertoire, mais plutôt dans l'arborescence de base (lord@Bender:$ ou quelque chose comme ça)
En tout cas, merci de ton aide. J'avance a pas de géant !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question