Réponses:
Vous pouvez le faire avec un glob si vous avez extglob
activé. Vous pouvez l'activer avec:
shopt -s extglob
Et vous pouvez l'utiliser comme:
ls -l !(test.cpp)
et il peut être utilisé d'autres manières aussi:
ls -l !(*.jpg) # list all files that don't have .jpg extensions
Puisqu'il s'agit d'un glob shell, il peut également être utilisé avec d'autres commandes. Un effet secondaire, cependant, est que cela entraîne la liste explicite des sous-répertoires, ce qui signifie qu'ils ls
les listeraient également. Mais, cela peut facilement être manipulé avec:
ls -ld !(test.cpp)
La manière classique (naïve?) De faire cela serait
ls -l * | grep -v test.cpp
Cependant, comme Lamar a commenté, GNU ls
a des options pour ignorer certains noms de fichiers
ls -l -I test.cpp *
Remarque ls -l *
répertorie les fichiers du répertoire en cours et les fichiers des sous-répertoires du premier niveau . Vous avez peut-être voulu dire ls -l
sans le*
ls -ld *
.