Lorsque je le fais, ls -l | grep ^d
il répertorie uniquement les répertoires du répertoire actuel.
Ce que je voudrais savoir est ce que fait le caret ^
en ^d
moyenne?
Lorsque je le fais, ls -l | grep ^d
il répertorie uniquement les répertoires du répertoire actuel.
Ce que je voudrais savoir est ce que fait le caret ^
en ^d
moyenne?
ls */
plutôt, qui fonctionnera avec ou sans la longue liste (ls -l
) et sans avoir besoingrep
(et est donc très légèrement plus rapide) et est moins susceptible (quels -l *
) de se retrouver dans une liste d'arguments problème trop long (car il met juste des répertoires dans la commande ligne). Bien sûr,find . -maxdepth 1 -type d
c'est encore mieux, car cela n'encombre pas du tout votre ligne de commande.Réponses:
La réponse d'Andy est correcte, comme le montre la page de manuel:
La raison pour laquelle cela fonctionne est la
-l
drapeauls
qui lui fait utiliser le format de liste longue. La première chose affichée dans chaque ligne est les autorisations lisibles par l'homme pour le fichier, et le premier caractère est soitd
pour un répertoire ou-
pour un fichierla source
C'est un caret, pas une carotte. Cela signifie «début de la ligne». Le grep ne correspond qu'aux lignes commençant par "d".
la source