#1 Le 02/10/2019, à 00:39
- mahoter
afficher le contenu d'un fichier en fonction de la date
Hello,
Je voudrais afficher le contenu du dernier fichier dans un repertoire en fonction de la date: le format du nom c'est par exemple 2019-09-30_08:00:00.txt
Merci de votre aide
Hors ligne
#2 Le 02/10/2019, à 02:33
- Watael
Re : afficher le contenu d'un fichier en fonction de la date
salut,
quel est le contexte ?
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 02/10/2019, à 06:48
- pingouinux
Re : afficher le contenu d'un fichier en fonction de la date
Bonjour,
Ceci ?
Le dernier fichier modifié dans le répertoire courant
ls -rt | tail -1
Le fichier dont le nom est la date la plus récente
ls | tail -1
Dernière modification par pingouinux (Le 02/10/2019, à 12:40)
Hors ligne
#4 Le 02/10/2019, à 12:33
- Pam547
Re : afficher le contenu d'un fichier en fonction de la date
Salut,
Il existe probablement plus simple. Quoi qu'il en soit, avec une invite de commande dans le répertoire contenant que des fichiers sous cette forme 2019-09-30_08:00:00.txt
Afficher le fichier le plus récent :
ls --hide tem* | sort -n > temp.txt ; temp='tail -n 1 temp.txt' ; cat $($temp) ; rm temp.txt ; unset temp
Afficher le fichier le plus ancien :
ls --hide tem* | sort -nr > temp.txt ; temp='tail -n 1 temp.txt' ; cat $($temp) ; rm temp.txt ; unset temp
Ou bien ?
Art.9.(code civil) Chacun a droit au respect de sa vie privée.
Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.
Hors ligne
#5 Le 02/10/2019, à 15:14
- Watael
Re : afficher le contenu d'un fichier en fonction de la date
ou bien, ne pas utiliser de fichier temporaire.
le shell n'est déjà pas une flèche, si en plus tu lui ajoutes des écriture/lecture de fichier... ... ...
moi, je ne sais toujours pas dans quel contexte doit s'effectuer cette recherche.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#6 Le 02/10/2019, à 15:47
- kamaris
Re : afficher le contenu d'un fichier en fonction de la date
Au prix d'un tableau, on peut éviter tout le reste :
a=('répertoire_en_question/'*.txt); cat "${a[-1]}"; unset a
Hors ligne
#7 Le 02/10/2019, à 16:10
- mahoter
Re : afficher le contenu d'un fichier en fonction de la date
Merci a tous.
Cette solution fonctionne, mail la commande affiche le contenu de tout le fichiers.
Je voudrais afficher 5 ligne et faire un grep en meme temps
Salut,
Il existe probablement plus simple. Quoi qu'il en soit, avec une invite de commande dans le répertoire contenant que des fichiers sous cette forme 2019-09-30_08:00:00.txt
Afficher le fichier le plus récent :
ls --hide tem* | sort -n > temp.txt ; temp='tail -n 1 temp.txt' ; cat $($temp) ; rm temp.txt ; unset temp
Afficher le fichier le plus ancien :
ls --hide tem* | sort -nr > temp.txt ; temp='tail -n 1 temp.txt' ; cat $($temp) ; rm temp.txt ; unset temp
Ou bien ?
Hors ligne
#8 Le 02/10/2019, à 16:41
- Pam547
Re : afficher le contenu d'un fichier en fonction de la date
Pour le fichier le plus récent et dans ce contexte mystérieux, cette commande devrait satisfaire la demande.
a=('répertoire_en_question/'*.txt); cat -n 5 "${a[-1]}" ; cat -n 5 "${a[-1]}" | grep PATTERN_à_rechercher ; unset a
Dernière modification par Pam547 (Le 02/10/2019, à 16:42)
Art.9.(code civil) Chacun a droit au respect de sa vie privée.
Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.
Hors ligne
#9 Le 02/10/2019, à 17:28
- Watael
Re : afficher le contenu d'un fichier en fonction de la date
mais, tu as testé ces commandes ?!
que crois-tu que fait cat -n 5 ?
t'es gentil de vouloir aider, mais teste quand même les commandes que tu indiques.
c'est pas parce que "ça marche", ou que c'est abordable pour un plus débutant que toi, que c'est bien.
Dernière modification par Watael (Le 02/10/2019, à 17:28)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#10 Le 02/10/2019, à 18:02
- Pam547
Re : afficher le contenu d'un fichier en fonction de la date
Il est gentil il est mignon. Il a pas prit son susucre :
-n, --number
number all output lines
Il faut lire 'number' ou 'all'
J'y suis pour rien moi si les anglo sont pas clairs.
Pour aller vite, sans rien articuler ils sont doués.
Mais pour ce qui est de respecter la planète et l'environnement c'est pas la même.
J'y suis pour rien moi, si la chose déteint sur moi .
Dernière modification par Pam547 (Le 02/10/2019, à 18:04)
Art.9.(code civil) Chacun a droit au respect de sa vie privée.
Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.
Hors ligne
#11 Le 02/10/2019, à 18:07
- Watael
Re : afficher le contenu d'un fichier en fonction de la date
et le 5 ?
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#12 Le 02/10/2019, à 18:11
- melixgaro
Re : afficher le contenu d'un fichier en fonction de la date
à Pam547 : comme indiqué, ça numérote les lignes.
Linux depuis ~2007. Xubuntu seulement.
Hors ligne
#13 Le 02/10/2019, à 18:24
- Pam547
Re : afficher le contenu d'un fichier en fonction de la date
à Pam547 : comme indiqué, ça numérote les lignes.
Ah oui effectivement, ils sont fortiches ces anglicans quand même.
Bref, merci pour l'astuce avec le tableau.
Bonne continuation, j'ai d'autres chats à fouetter
À bientôt.
Art.9.(code civil) Chacun a droit au respect de sa vie privée.
Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.
Hors ligne
#14 Le 02/10/2019, à 19:50
- kamaris
Re : afficher le contenu d'un fichier en fonction de la date
Je voudrais afficher 5 ligne et faire un grep en meme temps
Si ce que tu veux faire est bien un grep sur les cinq premières lignes du dernier fichier, alors tu peux faire
a=('répertoire_en_question/'*.txt); head -5 "${a[-1]}" | grep 'pattern'; unset a
Hors ligne
#15 Le 02/10/2019, à 20:58
- mahoter
Re : afficher le contenu d'un fichier en fonction de la date
THANKS to all
Hors ligne