Est-il possible de spécifier un motif pour find -name de telle sorte que à
la fois les fichiers "normaux" et les fichiers commençant par '.' soient
matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que
'*' ne matche pas un '.' en début de nom.
Bien sûr, je peux faire find . -name ".toto", mais dans ce cas, je ne
marche plus *que* les fichiers commençant par '.'.
Évidemment, je peux faire deux find successifs, un avec '.' et l'autre
sans, mais c'est pas génial.
Alors... ?
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pascal Bourguignon
Remi Moyen writes:
Salut,
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom.
Bien sûr, je peux faire find . -name ".toto", mais dans ce cas, je ne marche plus *que* les fichiers commençant par '.'.
Évidemment, je peux faire deux find successifs, un avec '.' et l'autre sans, mais c'est pas génial.
Est-il possible de spécifier un motif pour find -name de telle sorte que à
la fois les fichiers "normaux" et les fichiers commençant par '.' soient
matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que
'*' ne matche pas un '.' en début de nom.
Bien sûr, je peux faire find . -name ".toto", mais dans ce cas, je ne
marche plus *que* les fichiers commençant par '.'.
Évidemment, je peux faire deux find successifs, un avec '.' et l'autre
sans, mais c'est pas génial.
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom.
Bien sûr, je peux faire find . -name ".toto", mais dans ce cas, je ne marche plus *que* les fichiers commençant par '.'.
Évidemment, je peux faire deux find successifs, un avec '.' et l'autre sans, mais c'est pas génial.
There is no worse tyranny than to force a man to pay for what he does not want merely because you think it would be good for him. -- Robert Heinlein
Remi Moyen
On Wed, 21 Jul 2004, Pascal Bourguignon wrote:
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ? [...]
man find (tuyau: -o)
Ah, oui ! Merci, c'est parfait ! J'avais essayé -name ".toto" -name "toto", en me doutant bien que ça faisait un "et" logique, au vu des résultats, mais sans me rendre compte qu'il y avait une section dédiée à ça dans le man.
(quoique c'est un peu lourd comme syntaxe, mais bon, ça marche) -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Wed, 21 Jul 2004, Pascal Bourguignon wrote:
Est-il possible de spécifier un motif pour find -name de telle sorte que à
la fois les fichiers "normaux" et les fichiers commençant par '.' soient
matchés ?
[...]
man find
(tuyau: -o)
Ah, oui ! Merci, c'est parfait !
J'avais essayé -name ".toto" -name "toto", en me doutant bien que ça
faisait un "et" logique, au vu des résultats, mais sans me rendre compte
qu'il y avait une section dédiée à ça dans le man.
(quoique c'est un peu lourd comme syntaxe, mais bon, ça marche)
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ? [...]
man find (tuyau: -o)
Ah, oui ! Merci, c'est parfait ! J'avais essayé -name ".toto" -name "toto", en me doutant bien que ça faisait un "et" logique, au vu des résultats, mais sans me rendre compte qu'il y avait une section dédiée à ça dans le man.
(quoique c'est un peu lourd comme syntaxe, mais bon, ça marche) -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
Stephane Chazelas
2004-07-21, 15:13(+02), Remi Moyen:
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom. [...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit etre le GNU find ou un vieux find.
Ce comportement peut s'averer assez genant.
Par exemple,
find . ! -name '*.txt' -exec rm '{}' ;
Va effacer un fichier .important.txt
Du coup, on est obligé si on veut que le script soit fiable et portable sur Linux de faire :
Note qu'il existe (au moins) un find POSIX conformant pour Linux (voir a heirloom.sourceforge.net)
-- Stephane
2004-07-21, 15:13(+02), Remi Moyen:
Est-il possible de spécifier un motif pour find -name de telle sorte que à
la fois les fichiers "normaux" et les fichiers commençant par '.' soient
matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que
'*' ne matche pas un '.' en début de nom.
[...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit
etre le GNU find ou un vieux find.
Ce comportement peut s'averer assez genant.
Par exemple,
find . ! -name '*.txt' -exec rm '{}' ;
Va effacer un fichier .important.txt
Du coup, on est obligé si on veut que le script soit fiable et
portable sur Linux de faire :
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom. [...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit etre le GNU find ou un vieux find.
Ce comportement peut s'averer assez genant.
Par exemple,
find . ! -name '*.txt' -exec rm '{}' ;
Va effacer un fichier .important.txt
Du coup, on est obligé si on veut que le script soit fiable et portable sur Linux de faire :
Note qu'il existe (au moins) un find POSIX conformant pour Linux (voir a heirloom.sourceforge.net)
-- Stephane
Remi Moyen
On Wed, 21 Jul 2004, Stephane Chazelas wrote:
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom. [...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit etre le GNU find ou un vieux find.
C'est le GNU find (4.1.20), oui.
Ce comportement peut s'averer assez genant.
Bah, sans même chercher tes exemples un peu contournés (en tout cas, pour moi !), c'est génant simplement quand je veux rechercher à la fois dans les fichiers avec et sans '.' au début. -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."
On Wed, 21 Jul 2004, Stephane Chazelas wrote:
Est-il possible de spécifier un motif pour find -name de telle sorte que à
la fois les fichiers "normaux" et les fichiers commençant par '.' soient
matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que
'*' ne matche pas un '.' en début de nom.
[...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit
etre le GNU find ou un vieux find.
C'est le GNU find (4.1.20), oui.
Ce comportement peut s'averer assez genant.
Bah, sans même chercher tes exemples un peu contournés (en tout cas, pour
moi !), c'est génant simplement quand je veux rechercher à la fois dans
les fichiers avec et sans '.' au début.
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."
Est-il possible de spécifier un motif pour find -name de telle sorte que à la fois les fichiers "normaux" et les fichiers commençant par '.' soient matchés ?
Si je fais find . -name "*toto", il est dit explicitement dans le man que '*' ne matche pas un '.' en début de nom. [...]
Ce qui fait de ton find un find non-POSIX conformant. Ca doit etre le GNU find ou un vieux find.
C'est le GNU find (4.1.20), oui.
Ce comportement peut s'averer assez genant.
Bah, sans même chercher tes exemples un peu contournés (en tout cas, pour moi !), c'est génant simplement quand je veux rechercher à la fois dans les fichiers avec et sans '.' au début. -- Rémi Moyen "Malgré les apparences, le temps est très varié à Nancy : pluie, nuages, neige, brouillard, grêle, ..."