|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Bonjour,
Je souhaite effectuer une recherche sur des fichiers comme nom "name.type.année-mois-jour". Je fais donc un Code :
find /le_repertoire -name "name.type.[0-9][0-9]-[0-9]-[0-9]" Bonjour, Je souhaite effectuer une recherche sur des fichiers comme nom "name.type.année-mois-jour". Je fais donc un Code :
find /le_repertoire -name "name.type.*" Si quelqu'un pouvait m'aiguiller ![]() Merci, |
|
|
11
|
|
|
#2 |
|
Membre Expert
![]() Frédéric Brugmans Informaticien multitâche Inscription : février 2005 Messages : 661 ![]() |
Tu dois utiliser l'option suivante de find pour faire ce genre de recherches
|
|
|
10
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Merci des info, va falloir que je me remette dans les pages man moi !
Code :
find /mon_repertoire -regex name.type.[0-9][0-9]-[0-9]-[0-9] Merci, |
|
|
01
|
|
|
#4 | |||
|
Membre Expert
![]() Frédéric Brugmans Informaticien multitâche Inscription : février 2005 Messages : 661 ![]() |
Citation:
Code :
|
|||
|
|
10
|
|
|
#5 | ||||
|
Membre Expert
![]() |
Comme indiqué par backet, tu dois au moins ajouter une regexp devant car find compare le nom du fichier avec son arborescence par rapport à la racine de la recherche.
Cela étant, si les fichiers sont dans le dossier courant, tu peux directement utiliser ls : Code :
Code :
|
||||
|
|
10
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Bonjour,
J'utilise le find car derrière je compresse les résultats mais là ça marche pas des masses. Je tape : Code :
find /cygdrive/h/mon_dossier/log -regex "application.log.[0-9][0-9-[0-9-[0-9" -atime +30 -print -exec gzip {} \; Merci, |
|
|
02
|
|
|
#7 | |
|
Membre Expert
![]() |
Citation:
Code :
find /cygdrive/h/mon_dossier/log -regex ".*application.log.[0-9][0-9]-[0-9]-[0-9]" -atime +30 -print -exec gzip {} \;
|
|
|
|
10
|
|
|
#8 | |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Salut,
Citation:
Année 2 ou 4 chiffres ?(11 ou 2011) Mois et jours 1 ou 2 chiffres (01 ou 1, 09 ou 9, etc.) ?
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
|
10
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
|
|
|
10
|
|
|
#10 | |||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Citation:
J'ai tapé : Code :
Bref, ça passe pas... Merci du coup de main |
|||
|
|
10
|
|
|
#11 |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Re-
Essaye avec ça :
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
10
|
|
|
#12 |
|
Membre Expert
![]() |
...
...Alors pourquoi tu écris [0-9][0-9]-[0-9]-[0-9] dans ton premier message ? [0-9] est un motif qui va correspondre à un et un seul chiffre. Donc [0-9][0-9]-[0-9]-[0-9] va correspondre à 2 chiffres, suivis d'un tiret, d'un chiffre, d'un tiret et enfin d'un chiffre (voir mon tout premier exemple). Donc pour reconnaître quelque chose comme 2001-01-30, il faut écrire [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] ! |
|
|
10
|
|
|
#13 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Nickel,
D'un coup ça fonctionne beaucoup mieux !! Je vais profiter de vous encore un petit peu si vous le voulez bien. J'ai tapé mon script et j'ai un retour Alors que la commande tapé à la mano : Code :
find /cygdrive/h/application/log/ -regex ".*application.log.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]" -atime +10 -print -exec gzip {} \; Merci, |
|
|
10
|
|
|
#14 |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Sans voir le script ça va être difficile
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
01
|
|
|
#15 | ||||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Il n'y a pas grand chose dedans mais voilà :
Code :
Code :
Merci, |
||||
|
|
01
|
|
|
#16 | ||
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Il fait quoi le double saut de ligne avant le "{} \;" ???
Code :
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
||
|
|
10
|
|
|
#17 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Erreur de frappe sur le forum c'est tout, j'ai corrigé entre temps mais c'est ok sur le script
|
|
|
01
|
|
|
#18 |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Ok.
Et la commande sans le "-exec {} \;" retourne bien les fichiers en question sans message d'erreur ?
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
10
|
|
|
#19 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2009 Messages : 36 ![]() |
Le problème pourrait-il venir du fait que je n'ai pas log datant de plus de 10 jours?
Je me réponds, j'ai enlevé le -atime +10 et ça marche en ligne de commande, mais pas dans le script. CygWin en fait rien de particuliers ou ne nécessite pas une formulation particulière pour les scripts? Merci, |
|
|
01
|
|
|
#20 |
|
Expert Confirmé
![]() Inscription : janvier 2011 Messages : 970 ![]() |
Je ne pense pas
Mais dans le doute essaie avec une date plus récente et change le "gzip" par "echo", on sera fixé
__________________
$ man woman Il n'y a pas de page de manuel pour woman. |
|
|
10
|
Copyright © 2000-2012 - www.developpez.com