Question Exclure les répertoires dans ZSH glob


Avec zsh, vous pouvez utiliser **/* comme une courte alternative à l'utilisation find. Existe-t-il un moyen de limiter cela aux fichiers normaux, ce qui équivaut à -type f option?


4
2017-10-14 19:23


origine




Réponses:


Vous pouvez ajouter (.) à un modèle pour restreindre les correspondances aux fichiers simples tant que le Bare_Glob_Qual L'option est définie par défaut, sauf si zsh émule un autre shell. Ceci est couvert dans le Section Qualificatifs globaux de la page de manuel zshexpn.

Ainsi, le modèle complet permettant de faire correspondre les fichiers réguliers du répertoire en cours et de ses sous-répertoires serait **/*(.).


9
2017-10-14 21:50



Alors que votre réponse répond parfaitement au corps de la question - Je veux commenter le titre de la question de @ Erik: Pour exclure l'utilisation des répertoires **/*(^/) - avec cela des liens symboliques, fifos etc. sont listés, alors qu'avec **/*(.) ils ne sont pas. - mpy